Michael Natterer
e5112fa540
Bug 690900 - Typo in GIMP UI
...
Fix typo in gimptransformtool.c
2012-12-30 20:38:37 +01:00
Michael Natterer
d4933b3052
Bug 674160 - Redesign of "Lock panel"
...
Apply and heavily modify patch from remyDev which adds "lock position"
to GimpItem, similar to "lock content". Lock position disables all
sorts of translation and transform, from the GUI and the PDB.
Cleaned up some aspects of the lock content code as well because a
second instance of similar code always shows what went wrong the first
time.
2012-11-09 11:17:25 +01:00
Mikael Magnusson
da795c1267
gimptransformtool: Restore code that apparently was for the flip tool
2012-09-20 15:18:00 +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
Mikael Magnusson
6396e83057
transformtool: use new corner and side cursors appropriately considering current transform
2012-08-27 15:07:15 +02:00
Mikael Magnusson
e83b40982f
transformtool: adjust handles a bit
...
Since the move handle is gone, the pivot can be normal sized and circle again,
also put shear handles at 3/4 rather than 3/5.
2012-08-22 22:49:45 +02:00
Michael Natterer
95584e5548
app: re-format a comment in gimptransformtool.c
2012-08-22 20:41:44 +02:00
Mikael Magnusson
8dfc72dca9
transformtool: Make real_pick_function and real_draw_gui implementations of vfuncs
2012-08-21 20:59:15 +02:00
Michael Natterer
b1acd93f5e
Some formatting cleanup in the unified transform tool commits
2012-08-21 19:50:01 +02:00
Mikael Magnusson
08cd798ec6
transformtool: Set the cursor and tool cursor properly on each handle by way of the new cursor_update method
2012-08-20 20:28:21 +02:00
Mikael Magnusson
574df2b6db
transformtool: We show corrective preview for selections and paths, so why not drawables
2012-08-20 15:46:47 +02:00
Mikael Magnusson
f84987de73
transformtool: Add the bunch of 8 separate options for 3 things
2012-08-20 15:46:46 +02:00
Mikael Magnusson
03117bdf40
transformtool: Update modifier keys for options, solves problem with perspective frompivot + constrain
2012-08-20 15:46:46 +02:00
Mikael Magnusson
501c15f910
transformtool: Add a pick_function method to the TransformTool class and remove some more hack duplication
2012-08-20 15:46:46 +02:00
Mikael Magnusson
293600c579
transformtool: Add a draw_gui method to the TransformTool class and remove some hack duplication
2012-08-20 15:46:46 +02:00
Mikael Magnusson
615b5fabfd
transformtool: Add the five options instead of just two
2012-08-20 15:41:55 +02:00
Mikael Magnusson
003ccf2aec
transformtool: Enable hit detection for new handles
2012-08-20 15:22:22 +02:00
Mikael Magnusson
c4143ff209
transformtool: Remove shift-clicking to accept transform since shift is used as a modifier
2012-08-20 15:22:22 +02:00
Mikael Magnusson
362afb122a
transformtool: Try to straighten out modifiers
2012-08-20 15:22:21 +02:00
Mikael Magnusson
99f9d4d219
transformtool: add old "new" unified transformation tool
...
This is the proof of concept code I wrote before gsoc, with very naive
behaviour and simple interface.
2012-08-20 15:22:21 +02:00
Mikael Magnusson
f5b08f33aa
transformtool: Infinite undo
...
add undo and redo buttons, can undo all interactions. The reset button
is equivalent to undoing all operations and lets you press redo to get
back to before you reset. Doing something after undo will of course
clear all redo events.
2012-08-20 15:22:21 +02:00
Mikael Magnusson
c883c761df
transformtool: calculate center handle position correctly, add pivot handle
...
and use pivot handle in rotatetool so it works as before.
2012-08-20 15:22:21 +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 Natterer
7d9cd6a413
app: don't hardcode "Y u8" when checking whether to clip transformed buffers
...
instead, check if the format has alpha.
2012-05-02 17:51:08 +02:00
Michael Natterer
f8f4455459
app: change GimpDrawable::set_tiles() to ::set_buffer()
...
and remove the "type" argument, GeglBuffers have a format.
2012-05-02 17:46:07 +02:00
Michael Natterer
525a405270
app: port the entire transform API from TileManager to GeglBuffer
2012-05-02 17:46:06 +02:00
Michael Natterer
58dfa962a1
app: port simple rotating and flipping to GEGL
...
Which requires making the entire copy/paste apparatus aware of the
Babl format of the passed around tile managers.
2012-05-02 17:46:02 +02:00
Michael Natterer
2c62644f94
app: BoundSeg -> GimpBoundSeg, boundary_foo() -> gimp_boundary_foo()
2012-05-02 17:46:02 +02:00
Michael Natterer
9323c2f28c
app: move base/boundary.[ch] to core/gimpboundary.[ch]
...
No other changes yet, just make the move build.
2012-05-02 17:46:02 +02:00
Michael Natterer
24e6b20be8
Bug 674373 - Resizing Mask size is making gimp to crash
...
gimp_transform_tool_real_transform(): make sure we clip layer masks
and channels to their original extents also when transforming them
completely (not just a selection of them).
2012-04-21 22:42:53 +02:00
Michael Natterer
38b8f0596d
app: use the new modifier API instead of constants in all tools
...
There are still many uses of literal SHIFT and MOD1 left, but all uses
of CONTROL are gone. Should work exactly as before on Win/X11, and
still has some glitches on OSX.
2011-10-06 21:59:07 +02:00
Massimo Valentini
27feccc4a4
Do not access transform tool handles if NULL or stales
...
For example starting GIMP and pressing
Ctrl-N Enter Shift-T (or Shift-R or Shift-P)
showed warnings on the console, and with window manager's
focus mode set to 'click' it was also possible to crash GIMP.
2011-09-13 18:12:35 +02:00
Michael Natterer
5a7c517574
app: improve the undo strings of the transform tools
...
Apply modified patch from Liam Quin which replaces the hardcoded
undo strings by dynamic ones returned by a new virtual function
of GimpTransformTool.
2011-08-27 08:37:30 +02:00
Mikael Magnusson
bed3ca0ada
app: fix right-click cancel after a reset in transformtool
2011-08-13 13:34:17 +02:00
Michael Natterer
c2e6f24687
app: add GimpCanvasTransformGuides and use them in the transform tool
...
which removes a lot of code from the transform tool, and reduces the
number of canvas items used for the transform grid from possibly
gazillions to one.
2011-07-24 18:42:13 +02:00
Michael Natterer
43788feb50
app: remove enum GimpTransformGridType
...
and use the two new values from GimpGuidesType instead.
2011-07-24 18:01:21 +02:00
Michael Natterer
df448eb171
app: GimpTransformTool: remove members handle_w and handle_h
...
Instead, return them from the private gimp_transform_tool_handles_recalc()
because they are only needed in the caller.
2011-06-26 23:37:32 +02:00
Michael Natterer
ea27c7bc83
app: add the MIN4() and MAX4() macros to gimp-utils.h
...
instead of having them in 5 .c files.
2011-06-04 17:16:21 +02:00
Mukund Sivaraman
aaea0805e1
app: Initialize orig_tiles to NULL for GIMP_TRANSFORM_TYPE_PATH case
2011-04-21 14:08:36 +05:30
Michael Natterer
27d312b110
app: call gimp_tool_control_halt() early in transform_tool_button_release()
...
The generic shutdown triggered by shift-click executing copes with an
already halted tool, but we don't want to add checks to tons of
button_release functions.
2011-04-20 22:22:11 +02:00
Michael Natterer
eb9fefe505
app; move GimpTransformTool's shutdown code to control(HALT)
...
and remove gimp_transform_tool_halt(), including all the duplicated
parent class shutdown code.
2011-04-01 22:56:33 +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
365902b582
app: use gimp_canvas_item_hit() in gimp_transform_tool_oper_update()
...
so all the extents calculation and parameter passing is not
duplicated for the first time \o/
2011-03-28 18:55:08 +02:00
Michael Natterer
1c0fe73da4
app: gimp_transform_tool_draw(): initialize the array of handles to NULL
...
And update/improve some comments in the entire file.
2011-03-28 10:16:00 +02:00
Michael Natterer
20bed2c609
app: add gimp_draw_tool_add_transform_preview() and use it
2011-03-28 02:18:00 +02:00
Michael Natterer
fd80b90cf0
app: more minor GimpTransformTool cleanup
2011-03-28 02:10:33 +02:00
Michael Natterer
4097825f3c
app: some more code removal and cleanup in the transform classes
2011-03-28 01:20:47 +02:00
Michael Natterer
d36887644d
app: highlight the active transform tool handle
2011-03-28 00:13:14 +02:00
Michael Natterer
32f240fa4a
app: prepare GimpTransformTool for highlighting the handles
2011-03-27 23:57:12 +02:00
Michael Natterer
8512675088
app: rename GimpTransformTool::recalc() to ::recalc_matrix()
2011-03-27 23:12:11 +02:00