bcbc30c2a3
gimpwarptool: draw the effect size with taking care of zoom level
2013-05-21 23:28:40 +02:00
ab42a60998
gimpwarptool: add logic to commit the transformation
2013-05-21 23:28:40 +02:00
e6d05c6352
gimpwarptool: start the tool if the cursor is over an image and not started somewhere else
2013-05-21 23:28:40 +02:00
7bc094a443
gimpwarptool: draw a circle around the cursor to indicate the size of the effect
2013-05-21 23:28:40 +02:00
33f000d15c
gimpwarptool: add strenght and size in the tool's options
2013-05-21 23:28:40 +02:00
4f24f703ab
gimpwarptool: proof of concept code to act on the coords buffer
2013-05-21 23:28:40 +02:00
901a148760
gimpwarptool: add gegl infrastructure and image map for preview
2013-05-21 23:28:40 +02:00
d6ed13ef6c
GimpWarpTool: skeleton of the tool, with options
2013-05-21 23:28:40 +02:00
741792875e
app: add the GimpApplicator back for painting, but make its use optional
...
Default to using the new code. This is out of pure curiosity how
GEGL changes affect painting with a purely graph-based method.
2013-05-21 18:55:03 +02:00
b2f318de57
app: add a description label to the GEGL tool dialog
2013-05-20 17:42:32 +02:00
f48aacee18
app: add gegl:emboss to Filters -> Distorts
2013-05-20 02:20:09 +02:00
94294cd114
app: add gegl:whirl-pinch to Filters -> Distorts
2013-05-19 23:28:06 +02:00
dd648b1c12
app: add gegl:cubism to Filters -> Artistic
2013-05-19 22:21:38 +02:00
31f7b7fd63
app: add gegl:red-eye-removal to Filters -> Enhance
2013-05-19 20:51:35 +02:00
042a2400ad
app: blacklist "gegl:softglow" in the GEGL tool because it's in the menus
2013-05-19 19:06:46 +02:00
ef917b2c5c
app: add an "area" parameter to gimp_image_map_apply()
...
and only update the drawable in that area if it's not NULL. Useful for
expensive interactive operations like warp, where the tool exactly
knows which area has changed.
2013-05-18 01:45:01 +02:00
e3180de960
app: remove GimpPickable implementation from GimpImageMap
...
It's not needed because we don't modify the drawable's
pixels any more.
2013-05-17 02:02:28 +02:00
775ba72d7e
app: cleanup in GimpSeamlessCloneTool
...
- fix some leaks
- actually free the op, seems to cause a crash
- formatting cleanup
- remove lots of comments
2013-05-17 00:53:55 +02:00
0b37c9e374
app: some general minor seamless-clone cleanup, and make it build
2013-05-15 00:39:06 +02:00
32c129ded7
Update seamless clone tool to use new image map functions
2013-05-15 00:25:32 +02:00
a3e136ab7f
Fix: The offset for seamless cloning should be relative to the drawable
2013-05-15 00:25:32 +02:00
c9134ab55f
Make gimp use the all in one seamless clone GEGL operation
2013-05-15 00:25:32 +02:00
3f0cb773a6
Make the seamless clone tool compile again (update on API changes)
2013-05-15 00:25:31 +02:00
9e4e027ab0
Fix the the preview to redraw correctly! Also clean-up the code
2013-05-15 00:25:31 +02:00
ef235c389a
Fix the preprocessing. It now works without UV caching.
...
This gimp commit uses gegl commit 2d2d01d47f84, which still passes the
preprocessing result as a gpointer (and not a GObject*), and still does
not cache the UV cordinates into a buffer.
The result of the preprocessing currently isn't freed!
2013-05-15 00:25:31 +02:00
9390247c33
Add work in progress for preprocessing before rendering the op
2013-05-15 00:25:31 +02:00
35255505fd
Quick-Fix to the previous commit - return the right value on key press
2013-05-15 00:25:31 +02:00
a416acfe08
Fix bug in tilemanager unreffing and support committing the result
...
Unreffing the tilemanager of a GimpBuffer is wrong, since the function
to get the tilemanager of a buffer doesn't ref it.
Also, the operation of the tool can now be saved ("committed") using
the Enter key, and the tool can be halted using the Escape key. Note
however that we should do these in a nicer way, that does not require
restarting the tool to use it afterwards.
Finally, this commit removes the debug printing.
2013-05-15 00:25:31 +02:00
cab47522b7
Image map interaction works, and so are movement and drawing
2013-05-15 00:25:31 +02:00
8f2de693a7
Another WIP commit. There is a known tile manager leak, rest is OK
2013-05-15 00:25:31 +02:00
d745f85293
Another WIP commit. It now compiles, and runs with no runtime errors.
2013-05-15 00:25:31 +02:00
cacca4b317
commit of a WIP, introducing some of the actual tool logic
2013-05-15 00:25:31 +02:00
5fa0df17dd
Add a skeleton for the seamless clone tool, based on the cage tool
2013-05-15 00:25:30 +02:00
5baabf87fd
app: add gegl:exposure to Colors, and fix glitch in previous commit
2013-05-14 22:26:16 +02:00
de12010107
app: add gegl:box-blur to Filters/Blur
2013-05-14 21:34:03 +02:00
ac5428787e
Bug 598523 - Protect hidden layers from editing
...
Don't allow tool operations on invisible items, just like we do for
group layers or locked items.
Cleaned up and enhanced the patch a bit --Mitch
2013-05-13 23:29:43 +02:00
8320381885
app: add untested infrastructure for tool-internal undo/redo
...
Add virtual functions GimpTool::undo(), ::redo(), ::get_undo_desc()
and ::get_redo_desc() and corresponding wrappers in tool_manager.
Make the edit-undo and edit-redo actions check tool undo/redo first
before invoking image undo/redo.
2013-05-12 19:51:52 +02:00
3496e178ef
Bug 699185 - when moving the pointer fast out of guide scope, do not keep it highlighted.
...
When a drawing timeout happens too close from the previous drawing, we don't want to cancel
the timeout function (FALSE), but simply retry later (TRUE).
In our case in particular, if you move your pointer very fast over a guide, the highlighting
drawing was happening less than MINIMUM_DRAW_INTERVAL before the un-highlighting drawing,
hence canceling the later, which caused the drawing bug.
2013-05-12 05:24:12 +09:00
1cd1541b2d
app: port the foreground select tool to the GEGL matting ops
...
This is work in progress and needs the fixed GEGL ops too.
2013-05-08 00:00:48 +02:00
b893993e7b
app: add new enums GimpMattingDrawMode and GimpMattingEngine
2013-05-07 23:09:55 +02:00
0255a01f95
app: add gegl:checkerboard to <Image>/Filters/Render/Pattern
2013-04-30 19:20:18 +02:00
abbe2ecba9
app: build the foreground select tool again, minus the calls to SIOX
...
the interaction is completely there again, it just doesn't nothing
fancy with the mask :)
2013-04-30 00:04:28 +02:00
f6ec4f4af2
app: remove the image map tool overlay before hiding it again
...
Which means I have given up finding that last bug (for now).
2013-04-28 14:57:57 +02:00
2a0472b57e
app: don't forward key events to the curves tool graph if the tool isn't active
2013-04-26 00:11:51 +02:00
595f52bf09
app: more cleanup in GimpImageMapTool's overlay dialog handling
...
gimp_image_map_tool_initialize(): clean up adding the overlay.
gimp_image_map_tool_dialog_hide(): hide the overlay before removing it.
2013-04-25 22:46:05 +02:00
8230e948a8
app: allow to call gimp_image_map_tool_dialog_hide() multiple times
...
don't try to remove a GimpOverlayDialog from the canvas twice.
2013-04-25 22:23:32 +02:00
325d7541c7
app: always show the tool progress in the center of the canvas
...
getting rid of one more untransform_viewport().
2013-04-25 09:41:21 +02:00
62c5a737fd
app: fix conditions for guide and sample point moving/removing
...
Simply check the transfomred coords against the canvas extents and the
untransformed against the image contents instead of using
untransform_viewport(). The code is easier to read now, and
untransform_viewport() is still broken and can't really be implemented
properly when the canvas is rotated.
2013-04-25 09:30:46 +02:00
37d589335f
app: consolidate all transform API in gimpdisplayshell-transform.[ch]
...
Added complete API for zoom/unzoom (scale and scroll) and
rotate/unrotate, with the same set of functions as the existing
transform/untransform. Moved some special case functions to the
namespaces they belong.
2013-04-25 00:29:58 +02:00
aea94211b1
app: add an unrotated canvas item group to GimpDisplayShell
...
and put the software cursor and the tool progress there.
2013-04-24 00:01:01 +02:00