Commit Graph

35 Commits

Author SHA1 Message Date
Ell 615035c101 app, cursors: add GimpToolTransform3DGrid tool widget
Add a new GimpToolTransform3DGrid tool widget, subclassed from
GimpToolTransformGrid, which can be used to perform 3D
transformations.

The widget can be in one of three modes:

  CAMERA - allows adjusting the primary vanishing point by moving a
  handle.

  MOVE   - allows moving the object through dragging.

  ROTATE - allows rotating the object through dragging.

By default, controlling the transformation through dragging applies
to the X and Y axes.  Holding Shift (or setting the "constrain-
axis" property) restricts the motion to only one of the axes.

For the MOVE and ROTATE mode, holding Ctrl (or setting the "z-axis"
property) allows controlling the Z axis instead.

For the same modes, holding Alt (or setting the "local-frame"
property), applies the adjustments in the object's local frame of
reference, instead of the display's global frame of reference.
2020-01-06 21:52:51 +02:00
Michael Natterer ad5bf1dee7 cursors: add -HiDPI variants of all cursors
This includes gimp-tool-cursors-x2.xcf and cursorname-x2.png files,
they are simply 72x72 upscaled versions of the 36x36 fies with no
changes.

Anyone can now improve on cursors without having to deal with the
bulid process.
2018-12-31 22:22:25 +01:00
Michael Natterer ab9aa50925 cursors: oops, I optimized generation of resource files away 2018-05-28 20:09:09 +02:00
Michael Natterer a9592a59c8 Merge request 4 - Generated .c sources are used as headers...
...Generate .h files instead.

Generate proper .c and .h files for color-picker and tool cursors in
the directories where they are built, and stop including them in other
.c files.
2018-05-28 17:25:18 +02:00
Michael Natterer ea474f5e78 Bug 795230 - Rename Blend tool and provide PDB compatibility
Rename the tool cursor: blend -> gradient in filename and enum value.
2018-04-13 23:27:03 +02:00
Ell 2c1f1c507c app, cursors: add zoom cursor modifier
To be used by GimpToolGyroscope.
2018-04-10 10:18:48 -04:00
Ell f81542e5c9 app, cursors: add rotate cursor modifier
To be used by GimpToolGyroscope.
2018-04-10 10:18:48 -04:00
Ell 7136f09f0a app, cursors: add a cursor for the warp tool
... and use it instead of the perspective tool cursor.

Disable the cursor modifiers for now, since they're not really
meaningful.
2017-05-30 19:27:05 -04:00
Michael Natterer 9e06ff428c cursors: fix the contents of the gimp-color-picker-cursors resource file
Due to a typo we included all cursors, not only the color picker
cursor. Use the right Makefile.am variable to fix this. Also include
the cursor's raw PNG file, which is needed for simplifying OS X
specific code, see bug #753175.
2015-09-27 12:47:13 +02:00
Michael Natterer 957471604f icons, app, libgimpwidgets: use GResource for the compiled-in icons
And a small improvement in cursors/Makefile.am
2015-04-21 21:57:08 +02:00
Michael Natterer 7c36f94f7f cursors,app,libgimpwidgets: include cursors using GResource
instead of deprecated inline pixbufs. Require on gdk-pixbuf >= 2.30.8.
2015-04-14 22:55:10 +02:00
Mukund Sivaraman bc079e6cab build: Add $(AM_V_GEN) to more places in Makefile.am files 2012-10-10 13:13:56 +05:30
Michael Natterer 85b1f16004 app,cursors: add side and corner cursors in 45° steps
So sides also for corners and corners also for sides, just to
confuse the reader.
2012-08-26 23:59:05 +02:00
Michael Natterer c6ba0ffbdf app/cursors/libgimpwidgets: bye bye stone age B&W bitmap cursors 2012-08-26 22:53:04 +02:00
Michael Natterer 056e09a6cb Remove the makefile.msc build system, it is unmaintained since 2008 2011-12-16 15:53:56 +01:00
Michael Natterer 309985d169 cursors: add the new color picker cursor files to CLEANFILES 2010-09-14 09:26:38 +02:00
Michael Natterer d62c287fce libgimpwidgets: remove the pixbuf inline data garbage from GimpPickButton
Instead, generate a proper header for inclusion in cursors/.
2010-09-13 02:16:18 +02:00
Michael Natterer 7f9a4d51f7 app: get rid of using gdk_draw to construct bitmap cursors
At the same time, get rid of bitmap cursors alltogether. Instead
(because it looks ugly to have GDK convert RGBA cursors into bitmaps
for old X servers), add the bitmaps as proper PNGs and simply use them
as RGBA cursors.
2010-09-10 19:12:52 +02:00
Sven Neumann 023876c59a added missing modifier-select XBM files.
2008-06-11  Sven Neumann  <sven@gimp.org>

	* cursors/Makefile.am (EXTRA_DIST): added missing modifier-select
	XBM files.

svn path=/trunk/; revision=25919
2008-06-11 11:38:09 +00:00
Martin Nordholts a8bbf6b29b Applied modified patch from Daniel Hornung that changes the mouse cursor
2008-04-12  Martin Nordholts  <martinn@svn.gnome.org>

	Applied modified patch from Daniel Hornung that changes the mouse
	cursor to a "clicking will create a selection"-icon when hovering
	the center of a pending Scissors Select Tool selection (bug #493370)

	* app/tools/gimpiscissorstool.c
	(gimp_iscissors_tool_cursor_update): Use the new cursor icon.

	* cursors/modifier-select.png
	* cursors/xbm/modifier-select.xbm
	* cursors/xbm/modifier-select-mask.xbm: New cursor icon.

	* cursors/makefile.msc
	* cursors/Makefile.am 
	* app/widgets/gimpcursor.c
	* app/widgets/widgets-enums.h: Changed accordingly.

svn path=/trunk/; revision=25473
2008-04-12 11:40:52 +00:00
Michael Natterer 96645da002 cursors/Makefile.am cursors/gimp-tool-cursors.xcf
2008-02-28  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/gimp-tool-cursors.xcf
	* cursors/tool-polygon-select.png
	* cursors/xbm/tool-polygon-select.xbm
	* cursors/xbm/tool-polygon-select-mask.xbm
	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c: new cursor for polygon select.

	* app/tools/gimppolygonselecttool.c: use it.


svn path=/trunk/; revision=24994
2008-02-28 12:16:42 +00:00
Sven Neumann 804b7953a4 added xbm/cursor-mouse-mask.xbm.
2006-11-23  Sven Neumann  <sven@gimp.org>

	* cursors/Makefile.am (EXTRA_DIST): added
xbm/cursor-mouse-mask.xbm.
2006-11-23 21:12:09 +00:00
Sven Neumann 13004433f5 cursors/Makefile.am cursors/cursor-move.png cursors/gimp-tool-cursors.xcf
2006-11-15  Sven Neumann  <sven@gimp.org>

	* cursors/Makefile.am
	* cursors/cursor-move.png
	* cursors/gimp-tool-cursors.xcf
	* cursors/xbm/cursor-move-mask.xbm
	* cursors/xbm/cursor-move.xbm: added new cursor.

	* app/widgets/gimpcursor.c
	* app/widgets/widgets-enums.h: added as GIMP_CURSOR_MOVE.

	* app/tools/gimprectangletool.c: use instead of a cursor
modifier.
2006-11-15 22:43:24 +00:00
Michael Natterer db52679583 Merged the "soc-2006-healing-brush" branch. That branch is now officially
2006-09-02  Michael Natterer  <mitch@gimp.org>

	Merged the "soc-2006-healing-brush" branch. That branch is now
	officially closed and all further fixes and changes have to be
	applied to HEAD.

	Did some minor adjustments, mostly small indentation and spacing
	fixes. Derive the tool from the newly introduced GimpBrushTool
	which did not exist when the branch was created.

	Thanks a lot to Kevin Sookocheff for this nice contribution!

	* app/paint/paint-enums.[ch]: new enum GimpHealAlignMode.

	* app/paint/Makefile.am
	* app/paint/makefile.msc
	* app/paint/gimpheal.[ch]
	* app/paint/gimphealoptions.[ch]: the heal core and its options.

	* app/paint/gimp-paint.c: register the heal core.

	* app/tools/Makefile.am
	* app/tools/makefile.msc
	* app/tools/gimphealtool.[ch]: the heal tool.

	* app/tools/gimp-tools.c: register the heal tool.

	* app/tools/gimppaintoptions-gui.c: show the widgets that are used
	by heal.

	* app/widgets/gimphelp-ids.h: the heal help ID.

	* tools/pdbgen/stddefs.pdb
	* tools/pdbgen/pdb/paint_tools.pdb: the heal PDB wrappers.

	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c
	* cursors/Makefile.am
	* cursors/makefile.msc
	* cursors/tool-heal.png
	* cursors/xbm/tool-heal.xbm
	* cursors/xbm/tool-heal-mask.xbm: a new cursor for the heal tool.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/makefile.msc
	* themes/Default/images/tools/stock-tool-heal-16.png
	* themes/Default/images/tools/stock-tool-heal-22.png: new stock
	icons for the heal tool.

	* app/pdb/internal_procs.c
	* app/pdb/paint_tools_cmds.c
	* libgimp/gimppainttools_pdb.[ch]: regenerated.
2006-09-02 18:54:35 +00:00
Michael Natterer d1a76d93f7 cursors/Makefile.am cursors/cursor-corner-bottom-left.png
2006-06-02  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/cursor-corner-bottom-left.png
	* cursors/cursor-corner-bottom-right.png
	* cursors/cursor-corner-top-left.png
	* cursors/cursor-corner-top-right.png
	* cursors/cursor-side-bottom.png
	* cursors/cursor-side-left.png
	* cursors/cursor-side-right.png
	* cursors/cursor-side-top.png
	* cursors/xbm/cursor-corner-bottom-left-mask.xbm
	* cursors/xbm/cursor-corner-bottom-left.xbm
	* cursors/xbm/cursor-corner-bottom-right-mask.xbm
	* cursors/xbm/cursor-corner-bottom-right.xbm
	* cursors/xbm/cursor-corner-top-left-mask.xbm
	* cursors/xbm/cursor-corner-top-left.xbm
	* cursors/xbm/cursor-corner-top-right-mask.xbm
	* cursors/xbm/cursor-corner-top-right.xbm
	* cursors/xbm/cursor-side-bottom-mask.xbm
	* cursors/xbm/cursor-side-bottom.xbm
	* cursors/xbm/cursor-side-left-mask.xbm
	* cursors/xbm/cursor-side-left.xbm
	* cursors/xbm/cursor-side-right-mask.xbm
	* cursors/xbm/cursor-side-right.xbm
	* cursors/xbm/cursor-side-top-mask.xbm
	* cursors/xbm/cursor-side-top.xbm: new cursors for edge and corner
	resizing. They perfectly align with the small crosshair and can be
	used together with tool cursors and cursor modifiers.

	* cursors/gimp-tool-cursors.xcf: add them here too.

	* app/widgets/widgets-enums.h: add them to the GimpCursorType enum.

	* app/widgets/gimpcursor.c: add them here too.

	* app/display/gimpdisplayshell-cursor.c: treat them like the small
	crosshair (don't replace them by the small crosshair but use them
	as-is). Also allow the bad modifier with the large crosshair.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_cursor_update): use the new cursors. Don't
	call gimp_tool_set_cursor() here.

	(gimp_rectangle_tool_response): reset "function" to RECT_CREATING
	when resetting the tool.

	* app/tools/gimpselectiontool.[ch] (struct GimpSelectionTool):
	added boolean member "allow_move" which defalts to TRUE.

	(gimp_selection_tool_oper_update): don't move masks, floating
	selections or anything when "allow_move" is FALSE. Changed
	behavior of click inside a selection to simply create a new
	selection, need to press alt+shift now to drag-float the
	selection. Please test this, it's apretty fundamental change!

	(gimp_selection_tool_cursor_update): use the tool's configured
	cursor instead of always GIMP_CURSOR_MOUSE, so this function can
	be called after gimp_rectangle_tool_cursor_update() to add the
	plus, minus etc. modifiers.

	* app/tools/gimpnewrectselecttool.c: implement
	GimpTool::cursor_update() and call
	gimp_rectangle_tool_cursor_update() from there. Chain up to get
	the plus, minus etc. modifiers added.

	Re-enble selection moving:

	(gimp_new_rect_select_tool_oper_update): set GimpSelectionTool's
	"allow_move" to FALSE unless the rectangle tool is in an idle
	state.

	(gimp_new_rect_select_tool_button_press): allow a selection moving
	to be started if the rectangle tool is idle. Fall back to starting
	a rect select if gimp_selection_tool_start_edit() returned FALSE.
2006-06-02 15:23:47 +00:00
Michael Natterer 3f7b118225 cursors/Makefile.am cursors/modifier-bad.png
2006-06-01  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/modifier-bad.png
	* cursors/xbm/modifier-bad-mask.xbm
	* cursors/xbm/modifier-bad.xbm: new "bad" cursor
	modifier. Replaces the "bad" cursor.

	* cursors/gimp-tool-cursors.xcf: added it here too.

	* app/widgets/widgets-enums.h: added GIMP_CURSOR_MODIFIER_BAD.

	* app/widgets/gimpcursor.c: add the bad modifier. Leave the bad
	cursor there for now.

	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: use the modifier instead of the
	cursor. Fixes hotspot jumping when switching between normal and
	bad cursors. The changed cursor_update() functions even make more
	sense IMHO. Fixes bug #158407.
2006-06-01 20:30:52 +00:00
Michael Natterer c0b1fcb92c cursors/Makefile.am cursors/gimp-tool-cursors.xcf
2005-08-18  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/gimp-tool-cursors.xcf
	* cursors/modifier-join.png
	* cursors/xbm/modifier-join-mask.xbm
	* cursors/xbm/modifier-join.xbm: images for a "join" cursor modifier.

	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c: add the cursor.

	* app/tools/gimpvectortool.c: use it for connecting strokes.
	Fixes bug #313252.
2005-08-18 21:35:06 +00:00
Michael Natterer 6c88e46d72 changed path tool cursor to actually show a path and added 3 new cursors
2005-08-09  Michael Natterer  <mitch@gimp.org>

	* cursors/gimp-tool-cursors.xcf: changed path tool cursor to
	actually show a path and added 3 new cursors which are supposed
	to show a path's anchor, handle and segments. Someone really
	needs to beautify these...

	* cursors/tool-paths.png
	* cursors/xbm/tool-paths-mask.xbm
	* cursors/xbm/tool-paths.xbm: changed accordingly.

	* cursors/Makefile.am
	* cursors/tool-paths-anchor.png
	* cursors/tool-paths-control.png
	* cursors/tool-paths-segment.png
	* cursors/xbm/tool-paths-anchor-mask.xbm
	* cursors/xbm/tool-paths-anchor.xbm
	* cursors/xbm/tool-paths-control-mask.xbm
	* cursors/xbm/tool-paths-control.xbm
	* cursors/xbm/tool-paths-segment-mask.xbm
	* cursors/xbm/tool-paths-segment.xbm: new files.

	* app/widgets/widgets-enums.h (enum GimpToolCursorType): added
	PATH_ANCHOR, PATH_CONTROL and PATH_SEGMENTS.

	* app/widgets/gimpcursor.c: added the new cursors.

	* app/tools/gimpvectortool.c (gimp_vector_tool_cursor_update):
	use them.
2005-08-09 21:22:11 +00:00
Hans Breuer 3b3039148c build but *dont link* display-enums.obj, widget-enums.obj and
2004-07-31  Hans Breuer  <hans@breuer.org>

	* app/display/makefile.msc app/widgets/makefile.msc : build
	but *dont link* display-enums.obj, widget-enums.obj and
	gimpdisplayoptions.obj. They must be in the dll
	* app/makefile.msc : build gimp.exe and gimp-console.exe both
	using the same gimp-core.dll
	* app/gimpcore.def : new file, exports for gimp-core.dll
	* app/Makefile.am : added to EXTRA_DIST

	* cursors/makefile.msc : new file to create gimp-tool-cursors.h
	* cursors/Makefile.am : added to EXTRA_DIST

	* **/makefile.msc : updated

	* app/main.c app/app_procs.c : moved code to close the console
	from the former to the later. It only is to be used if The Gimp
	is not build as console app.

	* plug-ins/gfig/gfig.c : dont gimp_drawable_detach() the same
	drawable twice
	* plug-ins/gfig-dialog.c() : added a g_return_if_fail() to avoid
	crashing on File/Import
2004-08-01 20:51:12 +00:00
Michael Natterer 714d63fcda cursors/Makefile.am cursors/cursor-none.png new empty cursor images.
2004-06-05  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/cursor-none.png
	* cursors/xbm/cursor-none.xbm: new empty cursor images.

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c
	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimppainttool.[ch]
	* app/tools/gimpinktool.c
	* app/gui/preferences-dialog.c: applied patches from Philip
	Lafleur which implement hiding the cursor completely for paint
	tools. Changed the name of the config option from
	"hide-paint-tool-cursor" to "show-paint-tool-cursor" and default
	to TRUE because this needs the brush outline being visible while
	painting to be really usable. Fixes bug #132163.

	* app/widgets/widgets-enums.h: renamed all GimpCursorType and
	GimpToolCursorType enum values to GIMP_CURSOR_* and
	GIMP_TOOL_CURSOR_*.

	* app/widgets/gimpcursor.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimp*tool.c; changed accordingly.
2004-06-04 23:08:29 +00:00
Michael Natterer 8c2fbfc2f6 removed...
2004-06-04  Michael Natterer  <mitch@gimp.org>

	* cursors/*.xbm: removed...

	* cursors/xbm/*.xbm: ...and added here instead. Renamed them
	all to match the PNG file names.

	* cursors/Makefile.am: changed accordingly.

	* app/widget/gimpcursor.c: ditto. Merged the two cursor creating
	functions again because they duplicated too much code.
2004-06-04 12:10:13 +00:00
Michael Natterer 5c46556dd3 cursors/Makefile.am added PNG version of all cursors.
2004-06-03  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/*.png: added PNG version of all cursors.

	* cursors/gimp-tool-cursors.xcf: reordered and renamed all layers
	to match the new PNG filenames.

	* app/widgets/gimpcursor.[ch]: create cursors with alpha and color
	if the GdkDisplay supports it. Fall back to the old stuff
	otherwise.
2004-06-03 12:36:02 +00:00
Michael Natterer f4942b7255 cursors/hand.xbm removed.
2003-09-17  Michael Natterer  <mitch@gimp.org>

	* cursors/hand.xbm
	* cursors/hand_mask.xbm: removed.

	* cursors/hand_small.xbm
	* cursors/hand_small_mask.xbm: ...and added under new names.

	* cursors/Makefile.am
	* cursors/gimp-tool-cursors.xcf: changed accordingly.

	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c: removed HAND from the GimpCursorModifier
	enum and added it to the GimpToolCursorType enum. We don't have a
	hand tool but this way the hand cursor (which is in the lower
	right corner) can be used together with other cursor modifiers
	(which are in the upper right corner).

	* app/tools/gimpmovetool.c
	* app/tools/gimpvectortool.c: show cursor modifers with the hand
	cursor where appropriate.
2003-09-17 10:42:26 +00:00
Michael Natterer 3413a9ef3c small fix.
2001-11-12  Michael Natterer  <mitch@gimp.org>

	* HACKING: small fix.

	* configure.in: changed --disable-perl to --enable-perl because
	it doesn't build properly at the moment.

	* pixmaps/Makefile.am: removed stuff which is no longer there
	from EXTRA_DIST.

	* plug-ins/Makefile.am: put back the $(GIMP_PERL) line in SUBDIRS.

	* app/widgets/gimpmenuitem.c. include "libgimpwidgets/gimpwidgets.h".

	* data/Makefile.am
	* data/brushes/Makefile.am
	* data/gradients/Makefile.am
	* data/palettes/Makefile.am
	* data/patterns/Makefile.am: removed the old "files" hack and put
	the stuff to EXTRA_DIST.

	* app/Makefile.am
	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/file/Makefile.am
	* app/gui/Makefile.am
	* app/paint-funcs/Makefile.am
	* app/pdb/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* app/widgets/gimpmenuitem.c
	* app/xcf/Makefile.am
	* cursors/Makefile.am
	* libgimp/Makefile.am
	* libgimpbase/Makefile.am
	* libgimpcolor/Makefile.am
	* libgimpmath/Makefile.am
	* libgimpwidgets/Makefile.am
	* m4macros/Makefile.am
	* themes/Makefile.am
	* themes/Default/Makefile.am
	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/Makefile.am: removed "files" target.
2001-11-13 01:46:10 +00:00
Sven Neumann 7986a191a7 Makefile.am configure.in cursors/Makefile.am docs/Makefile.am added
2001-02-13  Sven Neumann  <sven@gimp.org>

	* Makefile.am
	* configure.in
	* cursors/Makefile.am
	* docs/Makefile.am
	* pixmaps/Makefile.am: added Makefiles to cursors, docs and pixmaps
	directories
2001-02-13 03:06:52 +00:00