Commit Graph

25 Commits

Author SHA1 Message Date
Michael Natterer a072a5b789 app: get rid of gdk_keymap_get_default(), use get_for_display() instead 2018-05-20 21:06:34 +02:00
Michael Natterer dda54c1df8 Deprecate stock items for good and change all icon defines to GIMP_ICON_*
Try to sort all GIMP_ICON_* defines into FDO categories like in
https://specifications.freedesktop.org/icon-naming-spec/latest/ar01s04.html

Add defines for all icons we override, rename some icons to their FDO
standard names, and mark the ones we duplicate with a comment so we
don't forget to rename those to standard names in 3.0.
2017-03-05 16:01:59 +01:00
Michael Natterer fb1dcd0239 app: clean up gimp_controller_keyboard,wheel_scroll()
to not use two nested if()s, and always return the result of
gimp_controller_event() when an event matches.
2016-11-22 19:43:51 +01:00
Michael Natterer d370e9c135 Bug 754171 - cmd - missing modifier key to configure input controllers
Forgot to replace "control" with "primary" in the keyboard controller
event names.
2015-09-09 14:59:32 +02:00
Michael Natterer fb92321d43 Bug 754171 - cmd - missing modifier key to configure input controllers
Need to call gdk_keymap_map_virtual_modifiers() on the parsed
modifiers in order to the the right ones on all platforms (OS X).
2015-09-09 12:11:43 +02:00
Michael Natterer e50103ccda Bug 754171 - cmd - missing modifier key to configure input controllers
Don't hardcode modifier masks in the wheel and keyboard input
controllers. Instead, hardcode accelerator strings and get the right
modifier mask from gtk_accelerator_parse() at runtime.

This turns e.g. "<Shift><Primary>" into Shift+Cmd on OS X and into
Shift+Ctrl on X11 and Windows.

Also rename the events accordingly and change the event names in the
default controllerrc.

Unrelated: reorder the actions so the ones with less modifiers are
listed first, and change the order of action matching to match the
actions with most modifiers (the last ones) first.
2015-09-08 23:24:48 +02:00
Michael Natterer 9331ef2456 libgimpwidgets: change GimpController's stock_id to icon_name
This API change is OK since the entire controller API is marked as
unstable and needs a special #define to be visible at all.
2014-05-09 09:19:06 +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 908f727f0a Chain up unconditionally in GObject::constructed()
It's supported since GLib 2.28.
2012-11-12 21:51:22 +01:00
Michael Natterer 7c60bb5181 app: use more of the new GDK_KEY_foo key names
and move the compat defines from display-enums.h to widgets-enums.h
2011-03-29 17:24:08 +02:00
Michael Natterer 202124c438 app: implement GObject::constructed() instead of ::constructor() 2011-01-14 09:38:46 +01: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
Michael Natterer d6f1bc5cf8 app/widgets/gimpcontrollerkeyboard.c (struct _KeyboardEvent) made the
2008-09-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontrollerkeyboard.c (struct _KeyboardEvent)
	* app/widgets/gimpcontrollerwheel.c (struct _WheelEvent): made the
	blurbs const.


svn path=/trunk/; revision=26845
2008-09-03 20:17:57 +00:00
Sven Neumann fbbf39e138 changed cursor key event prefix from "key-" to "cursor-".
2008-07-14  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontrollerkeyboard.c: changed cursor key event
	prefix from "key-" to "cursor-".

	* etc/controllerrc: changed accordingly. Also removed default
	bindings for cursor keys without modifiers as many tools use the
	cursor keys already.


svn path=/trunk/; revision=26188
2008-07-14 11:43:38 +00:00
Michael Natterer 6be00cbaf9 app/widgets/gimpcolorselectorpalette.[ch]
2006-12-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcolorselectorpalette.[ch]
	* app/widgets/gimpcontrollerinfo.[ch]
	* app/widgets/gimpcontrollerkeyboard.[ch]
	* app/widgets/gimpcontrollerwheel.[ch]: forgot LIBGIMP -> GIMP
2006-12-10 16:38:48 +00:00
Michael Natterer afd0b332d9 app/widgets/gimpcolorselectorpalette.[ch]
2006-12-09  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcolorselectorpalette.[ch]
	* app/widgets/gimpcontrollerinfo.[ch]
	* app/widgets/gimpcontrollerkeyboard.[ch]
	* app/widgets/gimpcontrollerwheel.[ch]: license is GPL, not LGPL.
2006-12-09 21:51:48 +00:00
Michael Natterer c567149f8e libgimpwidgets/gimpcolordisplay.[ch] added "const gchar *stock_id" members
2006-10-01  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolordisplay.[ch]
	* libgimpwidgets/gimpcontroller.[ch]: added "const gchar *stock_id"
	members to the class structs.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-controller-16.png
	* themes/Default/images/stock-controller-24.png
	* themes/Default/images/stock-controller-keyboard-16.png
	* themes/Default/images/stock-controller-keyboard-24.png
	* themes/Default/images/stock-controller-linux-input-16.png
	* themes/Default/images/stock-controller-linux-input-24.png
	* themes/Default/images/stock-controller-midi-16.png
	* themes/Default/images/stock-controller-midi-24.png
	* themes/Default/images/stock-controller-wheel-16.png
	* themes/Default/images/stock-controller-wheel-24.png
	* themes/Default/images/stock-display-filter-colorblind-16.png
	* themes/Default/images/stock-display-filter-colorblind-24.png
	* themes/Default/images/stock-display-filter-contrast-16.png
	* themes/Default/images/stock-display-filter-contrast-24.png
	* themes/Default/images/stock-display-filter-gamma-16.png
	* themes/Default/images/stock-display-filter-gamma-24.png
	* themes/Default/images/stock-display-filter-lcms-16.png
	* themes/Default/images/stock-display-filter-lcms-24.png
	* themes/Default/images/stock-display-filter-proof-16.png
	* themes/Default/images/stock-display-filter-proof-24.png: added
	icons for the various display filters and controllers. Made them
	as ugly as sin to trigger some replacement pain in the relevant
	people ;)

	* modules/cdisplay_colorblind.c
	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* modules/cdisplay_lcms.c
	* modules/cdisplay_proof.c
	* modules/controller_linux_input.c
	* modules/controller_midi.c
	* app/widgets/gimpcontrollerkeyboard.c
	* app/widgets/gimpcontrollerwheel.c: set icons.

	* app/widgets/gimpcolordisplayeditor.c
	* app/widgets/gimpcontrollerinfo.c
	* app/widgets/gimpcontrollerlist.c: show them in the display filter
	and controller GUIs.
2006-10-01 17:31:42 +00:00
Sven Neumann 6ebcf700d1 removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15  Sven Neumann  <sven@gimp.org>

	* app/*/*.c:
	* lib*/*.c: removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15 09:46:31 +00:00
Sven Neumann 37da566934 app/core/gimpcontext.c app/core/gimpimage.c app/paint-funcs/paint-funcs.c
2006-04-06  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcontext.c
	* app/core/gimpimage.c
	* app/paint-funcs/paint-funcs.c
	* app/widgets/gimpcontrollerkeyboard.c
	* app/widgets/gimpcontrollerwheel.c
	* app/widgets/gimpcursor.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimpdockseparator.c
	* libgimp/gimpbrushselect.c
	* libgimp/gimpfontselect.c
	* libgimp/gimpgradientselect.c
	* libgimp/gimppaletteselect.c
	* libgimp/gimppatternselect.c
	* libgimpwidgets/gimpchainbutton.c
	* libgimpwidgets/gimpcolorscales.c
	* libgimpwidgets/gimpcolorselect.c
	* libgimpwidgets/gimppickbutton.c
	* libgimpwidgets/gimpstock.c: sprinkled some const qualifiers.
2006-04-06 12:43:58 +00:00
Michael Natterer 61df53ec54 port to G_DEFINE_TYPE() and friends. Some related cleanup.
2005-12-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/*.c: port to G_DEFINE_TYPE() and friends. Some
	related cleanup.
2005-12-19 22:37:49 +00:00
Michael Natterer f731cb666a skip actions if their name starts with '<' (menu actions created by
2005-09-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactionview.c (gimp_action_view_new): skip
	actions if their name starts with '<' (menu actions created by
	plug-ins have names like "<Image>/Foo/Bar"). Scroll the
	pre-selected action to the center of the view, not to the top.

	* app/widgets/gimpcontrollereditor.c
	(gimp_controller_editor_edit_clicked): make the action editor
	transient to the controller editor. Show the edited event's name
	in the controller editor's header.

	* app/widgets/gimpcontrollerwheel.c: use gimp_get_mod_string()
	instead of hardcoding the modifiers in tons of translatable
	strings. Don't call gettext() in GimpController::get_blurb(),
	the strings are already translated.

	* app/widgets/gimpcontrollerkeyboard.c: removed call to gettext()
	here too.
2005-09-17 20:44:06 +00:00
Michael Natterer a14a317722 removed "<>" around modifiers.
2005-09-14  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpwidgets-utils.c (gimp_get_mod_name_*): removed
	"<>" around modifiers.

	* app/tools/gimpbucketfilloptions.c
	* app/tools/gimpcolorpickeroptions.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcropoptions.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpflipoptions.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmagnifyoptions.c
	* app/tools/gimpmoveoptions.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptransformoptions.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpthumbbox.c: added "()" around the whole modifier
	string where appropriate.

	* app/widgets/gimptoolbox.c (gimp_toolbox_button_accel_changed):
	use gimp_get_mod_string() instead of homebrewn variant of the same
	code.

	* app/widgets/gimpcontrollerkeyboard.c: replaced tons of static
	translatable strings containing modifiers by generated ones using
	gimp_get_mod_string() (traded for some more memory consumption).
2005-09-13 22:17:05 +00:00
Sven Neumann fb73b3d786 changed "Key" to "Cursor".
2005-01-09  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontrollerkeyboard.c: changed "Key" to "Cursor".
2005-01-09 02:07:31 +00:00
Michael Natterer 6d63d50040 guarded the whole header with GIMP_ENABLE_CONTROLLER_UNDER_CONSTRUCTION
2004-11-24  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcontroller.[ch]: guarded the whole header
	with GIMP_ENABLE_CONTROLLER_UNDER_CONSTRUCTION because it's no
	fixed API yet. Added a "state" property bacause "name" was abused
	as the controller's state. Added "help_domain" to the controller
	class.

	* libgimpwidgets/gimpwidgets.h: don't include gimpcontroller.h

	* modules/controller_linux_input.c
	* modules/controller_midi.c: set the "name" property to the name
	retrieved from the device, or to a default string if no name is
	available. Store the status in the "state" property. Added and
	changed some strings, but it's better to have the controller
	strings untranslated than to have no tooltips at all or misleading
	labels.

	* app/widgets/gimpcontrollerkeyboard.c
	* app/widgets/gimpcontrollerwheel.c: set default strings for both.

	* app/widgets/gimpcontrollereditor.c: added a GUI for the "state"
	property.

	* app/widgets/gimpcontrollerkeyboard.h
	* app/widgets/gimpcontrollerwheel.h
	* app/widgets/gimpcontrollerinfo.c
	* app/widgets/gimpcontrollers.c: #define
	GIMP_ENABLE_CONTROLLER_UNDER_CONSTRUCTION (just as in all files
	above).

	* app/widgets/gimphelp-ids.h: added the IDs of all controller
	modules and also of all other modules. The defines are not
	actually used, but this file is the canonical place to collect all
	the core's help IDs.
2004-11-24 02:17:12 +00:00
Michael Natterer 02b91f6628 app/tools/gimptool.[ch] added boolean return value to
2004-06-24  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]
	* app/tools/tool_manager.[ch]: added boolean return value to
	GimpTool::key_press() which indicates if the event was handled.

	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.[ch]
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: return TRUE if the key event was handled.

	* app/tools/gimppainttool.c: removed key_press() implementation.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerkeyboard.[ch]: new controller class
	which takes GdkEventKey and emits controller events for all
	combinations of modifiers and cursor keys.

	* app/widgets/gimpcontrollers.[ch]: added new function
	gimp_controllers_get_keyboard().

	* app/display/gimpdisplayshell-callbacks.c: if a key event was not
	handled by the active tool, dispatch it to the keyboard controller.

	* etc/controllerrc: add a keyboard controller which is configured
	to do the same as the removed gimp_paint_tool_key_press().
2004-06-24 10:16:08 +00:00