Mikael Magnusson
c37619ade7
transformtool: Pick move operation anywhere inside polygon
2012-08-20 15:46:47 +02:00
Mikael Magnusson
a0d79634ed
transformtool: Add one more rotation handle, in case the point you want to pivot around is close to the first one
2012-08-20 15:46:47 +02:00
Mikael Magnusson
62525e090b
transformtool: use GimpFrame + GtkBox to group the options instead of just putting GtkLabel between them
2012-08-20 15:46:46 +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
f2099fbb28
transformtool: Check if new transform is convex and don't involve the pivot if it isn't
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
01142f248d
transformtool: some more cleanup + comments
2012-08-20 15:46:45 +02:00
Mikael Magnusson
03d9a75c30
transformtool: Rename p to d because p is a weird name for a delta/diff
2012-08-20 15:46:45 +02:00
Mikael Magnusson
eb65b09ebd
transformtool: move assignment of coords to after the logic code, this somehow fixes frompivot perspective
2012-08-20 15:46:45 +02:00
Mikael Magnusson
ed29503f28
transformtool: Deduplicate code, use more vector representations, fix style and warnings
2012-08-20 15:46:45 +02:00
Mikael Magnusson
70671f2967
transformtool: Factor out getpivotdelta() function
2012-08-20 15:46:45 +02:00
Mikael Magnusson
bad3c0d86c
transformtool: Add frompivot for perspective handles too
2012-08-20 15:46:45 +02:00
Mikael Magnusson
9be0d2b029
transformtool: Add option for locking pivot to canvas, add code to transform the pivot along with all transformations
2012-08-20 15:46:24 +02:00
Mikael Magnusson
52dd46f9d3
transformtool: Copy the corner scale non-aspect frompivot code to side scale
2012-08-20 15:41:55 +02:00
Mikael Magnusson
76f23aa8a0
transformtool: Use better method for keepaspect side scaling
2012-08-20 15:41:55 +02:00
Mikael Magnusson
051775eb0d
transformtool: Fix frompivot for cornerscale, only problem is the handle doesn't end up at mouse cursor
2012-08-20 15:41:55 +02:00
Mikael Magnusson
615b5fabfd
transformtool: Add the five options instead of just two
2012-08-20 15:41:55 +02:00
Mikael Magnusson
6dac9e84f9
transformtool: Show an incredibly helpful message in the statusbar when a handle is hovered over
2012-08-20 15:41:55 +02:00
Mikael Magnusson
5cfa57ae87
transformtool: how to draw in screen coords
2012-08-20 15:41:54 +02:00
Mikael Magnusson
b0dbaaae54
transformtool: Add todo about pivot point
...
Move pivot with frame, needs to do so for all operations
2012-08-20 15:41:54 +02:00
Mikael Magnusson
be3f42c401
transformtool: implement aspect constraint for scaling via side handle
2012-08-20 15:41:54 +02:00
Mikael Magnusson
e762764a1d
transformtool: Make basic scale op via side handle behave as spec, no constrain or frompivot
2012-08-20 15:41:54 +02:00
Mikael Magnusson
3367a415c4
transformtool: corner scale: use full transform machinery to keep pivot constant position, missing some offset maybe
2012-08-20 15:41:54 +02:00
Mikael Magnusson
d5220e7d42
transformtool: nonworking naive frompivot for corner scale
...
This just scales the distance to the pivot from the handle in x and y
separately, which turns out to only work sometimes.
2012-08-20 15:41:54 +02:00
Mikael Magnusson
c5b4beff65
transformtool: Make corner scale op behave as spec, no frompivot
2012-08-20 15:41:53 +02:00
Mikael Magnusson
948cf1801c
transformtool: implement fromcenter constraint for shearing (old spec)
...
This doesn't keep the pivot in place, it merely moves the opposite edge
by the same amount (but in the opposite direction).
2012-08-20 15:41:53 +02:00
Mikael Magnusson
9a58e878be
transformtool: Make shear op behave as spec, no frompivot
2012-08-20 15:41:53 +02:00
Mikael Magnusson
5ed30efc49
transformtool: remove unneeded old stuff, cleanup
2012-08-20 15:41:53 +02:00
Mikael Magnusson
ce2c959408
transformtool: Make perspective op behave as spec
2012-08-20 15:41:53 +02:00
Mikael Magnusson
a532c77bca
transformtool: Make rotation axis behave as spec
2012-08-20 15:41:33 +02:00
Mikael Magnusson
81cb334d94
transformtool: Make rotate op behave as spec
2012-08-20 15:22:22 +02:00
Mikael Magnusson
dd470c9259
transformtool: Make move op behave as spec
2012-08-20 15:22:22 +02:00
Mikael Magnusson
003ccf2aec
transformtool: Enable hit detection for new handles
2012-08-20 15:22:22 +02:00
Mikael Magnusson
a8a8450b6e
transformtool: Add temporary new handles
...
put perspective handles on the outside instead (if you invert the frame,
they'll switch place with the scale handles, oh well)
2012-08-20 15:22:22 +02:00
Mikael Magnusson
9e330e432b
transformtool: temp hack to fiddle with drawing interface
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
2967e4fbfd
transformtool: remove unused function shearvector()
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
Mikael Magnusson
e324913284
app: fix drawing of the GIMP_HANDLE_CROSS canvas item
2012-08-20 15:22:20 +02:00
Mikael Magnusson
7baaaa4867
app: remove useless function call in gimp_tool_motion
2012-08-20 15:22:20 +02:00
Mikael Magnusson
f6f22ed431
Remove stray semicolons
2012-08-20 15:22:20 +02:00
Piotr Drąg
213387c190
Updated Polish translation
2012-08-20 15:02:37 +02:00
Nils Philippsen
43fc9dbd8e
file-gif-load: fix type overflow (CVE-2012-3481)
...
Cast variables properly to avoid overflowing when computing how much
memory to allocate.
2012-08-16 12:07:40 +02:00
Jan Lieskovsky
d95c2f0bcb
file-gif-load: limit len and height (CVE-2012-3481)
...
Ensure values of len and height can't overflow g_malloc() argument type.
2012-08-16 12:06:31 +02:00
Nils Philippsen
86f4cd39bd
file-cel: use g_set_error() for errors instead of g_message()
2012-08-14 12:03:59 +02:00