Michael Natterer
1e17f0aed1
app: port GimpImageMap to use the new drawable filters
...
which makes live update more responsive and removes tons of code, but
adds a delay with progress when finally committing the effect.
2013-04-12 14:35:27 +02:00
Michael Natterer
e546f2b43b
Bug 683462 - cropping with rectangular select tool leaves misaligned...
...
Reset the tool on image changes again, but not if only the active
drawable changes, so keep bug #678890 closed:
Introduce new dirty flag GIMP_DIRTY_ACTIVE_DRAWABLE and set it on all
tools' dirty_mask except for rect select. Check the new flag when
reseting the active tool because of a drawable change.
2012-09-06 23:55:35 +02:00
Michael Natterer
078128bb09
Bug 678890 - Selection box handles do not respond after changing layer
...
Make sure that temporarily setting/unsetting tool->control's "preserve
tool across image changes" does not mess up the default value:
Introduce gimp_tool_control_push/pop_preserve() which restores the old
state automatically, and use it in all tools, instead of saying
set_preserve(TRUE/FALSE) around image changes.
2012-07-26 18:17:01 +02:00
Michael Muré
bec5a7e805
cage tool: fix handle added in the wrong side of the cage
...
This happened when:
1) cage still open
2) clicking on the edge between the first and the last handle
2012-05-11 12:34:53 +09:00
Michael Muré
d9ba8b81da
Bug 675825 - (cage) simply using cage transform tool makes gimp to crash.
...
Just check if there is enough handles before closing
2012-05-11 12:02:58 +09:00
Michael Natterer
7101ee191a
app: move all GEGL operations to new directory app/operations/
2012-05-10 21:22:44 +02:00
Michael Natterer
797e622734
app: remove obsolete include
2012-05-02 17:50:52 +02:00
Michael Natterer
89d525c970
app: remove legacy support from GimpImageMap
2012-05-02 17:50:40 +02:00
Michael Natterer
3a48101b9d
app: use below new function for shapeburst blend and cage tool progress
2012-05-02 17:50:37 +02:00
Øyvind Kolås
17f92b7379
app: the destroy functions are gone from GEGL, use g_object_unref() instead
2012-03-29 22:21:05 +01:00
Michael Natterer
439f7f579a
app: s/Babl/const Babl/
2012-03-24 18:52:31 +01:00
Michael Muré
40e564711c
gimpcagetool: remove unused parameter for gimp_cage_tool_compute_coef
2011-06-28 23:25:13 +02:00
Michael Muré
989b85988b
Cage tool: allow to add handle by clicking on an edge
2011-05-03 00:46:42 +02:00
Michael Muré
cc247b3e66
Cage tool: in cage mode, remove selected handles when hitting backspace
2011-05-03 00:46:42 +02:00
Michael Muré
5d771014d4
GimpCageConfig: use a GArray to store cage's point, to make easier
...
further improvement
2011-04-20 18:50:17 +02:00
Michael Muré
7f6d06d3e9
cagetool: fix buffer leak
2011-04-05 10:18:07 +02:00
Michael Muré
2200b80033
cagetool: fix the restoration of the image when going back to edit mode
2011-04-05 00:05:56 +02:00
Michael Muré
ec25c6be42
cage tool: fix transformed area going away when setting a cage,
...
going back to edit mode, edit the cage then going to deform mode
2011-04-05 00:05:56 +02:00
Michael Natterer
d90de689fb
app: GimpCageTool: in CAGE_CHANGE mode, switch to DEFORM when enter is pressed
2011-04-01 22:56:33 +02:00
Michael Natterer
a7f32f2290
app: move shutdown code from gimp_cage_tool_halt() to control(HALT)
2011-04-01 22:56:33 +02:00
Michael Natterer
6899b0bf60
app: GimpCageTool: go to deform mode only if the user clicked the first handle
...
and not if it was only moved.
2011-03-30 11:51:51 +02:00
Michael Natterer
f585788e46
app: tool control cleanup in GimpCageTool
...
Don't call tool_control functions twice in init(). Call activate() and
halt() only on button_press() and button_release() to indicate that
the tool wants motion events.
2011-03-30 11:48:05 +02: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
6fdcc5f465
app: add a progress indicator for cage transform
...
- add a double "progress" property to GimpOperationCageTransform
and update it every 20 rows
- connect to the notify::progress in the tool and display a tool
progress
2011-03-25 15:41:53 +01:00
Michael Natterer
41b905baa8
app: make GimpTool implement the GimpProgress interface properly
...
and remove the previously added quick hack. Change the cage progress
code to standard progress code, and use the tool progress also in
blend.
2011-03-25 10:55:07 +01:00
Michael Natterer
8daee72518
app: various GimpCageTool fixes
...
- completely halt the tool before starting it
- bail out on options changes when the tool is not active
- initialy set the mode to CAGE_CHANGE
- indentation, formatting, various small cleanups
2011-03-25 10:18:56 +01:00
Michael Natterer
e9dd30127a
app: add an on-canvas progress facility to GimpTool
...
and use it in GimpCageTool.
2011-03-25 09:48:26 +01:00
Michael Natterer
1659f62e2c
app: small style cleanup in the merged cage code
2011-03-23 22:29:00 +01:00
Michael Muré
7056d38681
cagetool: implement rubber band selection for edit mode, if the cage is closed
2011-01-22 15:38:35 +01:00
Michael Muré
aa98319f1b
cage tool: implement options_notify to allow switching back to edit mode
...
and update fill option
2011-01-22 14:17:28 +01:00
Michael Muré
3f581c37b6
cagetool: fix a drawing bug when adding point to the cage while moving cursor
2011-01-22 14:17:28 +01:00
Michael Muré
f379f3c467
fix rubber band selection for layer with offset
2011-01-22 14:17:28 +01:00
Michael Muré
e7d219d387
Cage tool: add rubber band selection for deform mode
2011-01-22 14:17:28 +01:00
Michael Muré
dd28e1fe02
Implementation of the multi-selection in the cage tool and refactoring that come with.
...
This editing mode should work like the path tool.
The backup of the cages point for undo is replaced by a displacement that affect
all the selected point in CageConfig with commit/reset displacement.
2011-01-22 14:17:28 +01:00
Michael Muré
006c7ab9f4
refactor of the GimpCageConfig with a custom GimpCagePoint data structure
2011-01-22 14:17:28 +01:00
Michael Muré
23193cba2f
Rewrite of the cage tool as a state machine
2011-01-22 14:17:28 +01:00
Michael Natterer
223ae53fcc
app: set the cage tool's dirty mask so it is canceled upon image changes
2010-11-21 14:13:58 +01:00
Alexia Death
5fa1e9ea40
app: Tell the user how to commit the cage transform
2010-11-10 19:11:49 +02:00
Michael Natterer
ef44bfedad
app: check for GIMP_BUTTON_RELEASE_CANCEL, not GDK_BUTTON3_MASK
2010-11-10 14:39:30 +01:00
Michael Natterer
f6a284dc4c
app: use a canvas progress in the cage tool
...
This is a proof-of-concept hack that needs review and comments before
being used generally.
2010-11-09 19:35:54 +01:00
Michael Natterer
cf0402f069
app: consistent handle sizes for tool drawing
...
Replace a myriad of defines in different tools by three consistent
sizes defined in gimpdrawtool.h.
2010-11-08 22:37:00 +01:00
Michael Natterer
a73348c561
app: fix handle hovering detection, it was using the wrong radius
2010-11-06 00:06:13 +01:00
Michael Natterer
31aa09a11f
app: add proper cursors that show what will happen
2010-11-06 00:06:13 +01:00
Michael Natterer
9d604a545f
app: move all the cage modifying logic to button_release()
...
so any interaction can be canceled by holding BUTTON3 while
releasing. Add additional state "hovering_handle" so we can do proper
drawing that matches what will happen on mouse interaction.
2010-11-05 23:49:48 +01:00
Michael Natterer
f4c98fbad6
app: don't use a GimpVector2 for the cursor position
...
because less code is more readable.
2010-11-05 22:30:10 +01:00
Michael Natterer
9867cf62c3
app: -1000 is a valid cursor position, use G_MINDOUBLE as "no cursor"
2010-11-05 22:25:14 +01:00
Michael Natterer
baf964a734
app: rename member handle_moved to moving_handle
2010-11-05 22:21:56 +01:00
Michael Natterer
038a6dd671
app: no need to abort the image map when a handle changes
2010-11-05 21:05:54 +01:00
Michael Natterer
77bb31ba51
app: put the drawn lines into a stroke group
2010-11-05 20:00:20 +01:00
Michael Natterer
86a220bbdf
app: remove the preview node and other unneeded stuff
...
and simplify the code even further.
2010-11-05 19:47:57 +01:00