5d771014d4
GimpCageConfig: use a GArray to store cage's point, to make easier
...
further improvement
2011-04-20 18:50:17 +02:00
7f6d06d3e9
cagetool: fix buffer leak
2011-04-05 10:18:07 +02:00
2200b80033
cagetool: fix the restoration of the image when going back to edit mode
2011-04-05 00:05:56 +02:00
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
d90de689fb
app: GimpCageTool: in CAGE_CHANGE mode, switch to DEFORM when enter is pressed
2011-04-01 22:56:33 +02:00
a7f32f2290
app: move shutdown code from gimp_cage_tool_halt() to control(HALT)
2011-04-01 22:56:33 +02:00
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
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
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
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
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
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
e9dd30127a
app: add an on-canvas progress facility to GimpTool
...
and use it in GimpCageTool.
2011-03-25 09:48:26 +01:00
1659f62e2c
app: small style cleanup in the merged cage code
2011-03-23 22:29:00 +01:00
7056d38681
cagetool: implement rubber band selection for edit mode, if the cage is closed
2011-01-22 15:38:35 +01:00
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
3f581c37b6
cagetool: fix a drawing bug when adding point to the cage while moving cursor
2011-01-22 14:17:28 +01:00
f379f3c467
fix rubber band selection for layer with offset
2011-01-22 14:17:28 +01:00
e7d219d387
Cage tool: add rubber band selection for deform mode
2011-01-22 14:17:28 +01:00
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
006c7ab9f4
refactor of the GimpCageConfig with a custom GimpCagePoint data structure
2011-01-22 14:17:28 +01:00
23193cba2f
Rewrite of the cage tool as a state machine
2011-01-22 14:17:28 +01:00
223ae53fcc
app: set the cage tool's dirty mask so it is canceled upon image changes
2010-11-21 14:13:58 +01:00
5fa1e9ea40
app: Tell the user how to commit the cage transform
2010-11-10 19:11:49 +02:00
ef44bfedad
app: check for GIMP_BUTTON_RELEASE_CANCEL, not GDK_BUTTON3_MASK
2010-11-10 14:39:30 +01:00
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
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
a73348c561
app: fix handle hovering detection, it was using the wrong radius
2010-11-06 00:06:13 +01:00
31aa09a11f
app: add proper cursors that show what will happen
2010-11-06 00:06:13 +01:00
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
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
9867cf62c3
app: -1000 is a valid cursor position, use G_MINDOUBLE as "no cursor"
2010-11-05 22:25:14 +01:00
baf964a734
app: rename member handle_moved to moving_handle
2010-11-05 22:21:56 +01:00
038a6dd671
app: no need to abort the image map when a handle changes
2010-11-05 21:05:54 +01:00
77bb31ba51
app: put the drawn lines into a stroke group
2010-11-05 20:00:20 +01:00
86a220bbdf
app: remove the preview node and other unneeded stuff
...
and simplify the code even further.
2010-11-05 19:47:57 +01:00
6f31f3d2f6
app: pass the drawable to gimp_cage_tool_create_image_map()
2010-11-05 19:42:42 +01:00
2028d547a2
app: use the GimpImageMap as it's meant to be used
...
Have an incremental live preview of the rendering and actually use the
rendering instead of throwing it away and doing it all over again on
commit. gimp_cage_tool_process() is therefore currently unused but I
left it there for Alexia to fix the tool for layers with masks.
2010-11-05 19:10:03 +01:00
e0dad1bf35
app: canonicalize cage op names, and some indentation fixes
2010-11-05 12:45:07 +01:00
eb3db78b06
app: rename config->cage_vertice_number to config->n_cage_vertices
...
and some minor cleanup.
2010-11-05 10:04:45 +01:00
09aae9a919
app: more minor cage tool cleanup
2010-11-05 09:49:03 +01:00
c98688873d
app: more minor cage cleanup
2010-11-04 22:47:03 +01:00
a6d85e8d57
app: more formatting cleanup
2010-11-04 22:38:41 +01:00
33a8c15403
app: large scale formatting cleanup in the new cage code
...
- move enum to the new gimp-gegl-enums.[ch]
- clean up includes
- spacing
- indentation
- coding style
2010-11-04 22:16:27 +01:00
5ce581f797
app: Use Shift+G for Cage Tool
...
We can't use Shift+R which is taken by the rotate tool, so use Shift+G
instead. G is for "Green coordinate".
2010-11-04 21:44:31 +01:00
9b96120c31
app: Make cage tool behave nice with offset layers
2010-11-04 00:26:43 +02:00
e529428a68
app: Make cage tool apply to layer mask as well if one is present
2010-11-04 00:26:04 +02:00
f09f6dae06
app: Make cage tool work with gegl master
2010-11-02 20:56:53 +02:00
d7492cb528
app: remove forward transform preview from cage tool, reverse is actually faster
2010-10-07 00:41:40 +03:00
1a5bacf649
Fix cage tool to work with the draw tool in master
2010-09-26 23:57:45 +03:00