Commit Graph

4327 Commits

Author SHA1 Message Date
Michael Natterer 98e7ec090b app: use the new gimp_personal_rc_gfile() in lots of places
and pass the GFile to the newly added GFile-based GimpConfig,
GimpScanner etc. functions. This is starting to make sense now...
2014-07-01 20:02:45 +02:00
Michael Natterer a31cb02405 app: return a GFile from gimp_tool_info_build_options_filename()
and rename it to gimp_tool_info_get_options_file().
2014-07-01 15:41:12 +02:00
Michael Natterer 8c8135a881 app: port GimpImageMapTool's settings API from filename to GFile 2014-07-01 15:13:02 +02:00
Michael Natterer 6fb9d1a3b0 app: cancel the tool progress if the progress title was clicked 2014-06-30 03:41:46 +02:00
Michael Natterer f4803af808 app: add boolean "cancelable" API to GimpImageMap and gimpdrawable-filter.[ch]
Return booleans indicating success (FALSE == user has canceled), and
allow canceling only in GimpImageMapTool for now.
2014-06-30 01:06:04 +02:00
Michael Natterer 9ec2a3cdeb app: implement progress canceling in GimpTool
In gimp_tool_progress_start(), if the progress is cancelable, grab on
an invisible widget and emit the progress' "cancel" signal when Escape
is pressed.
2014-06-30 00:02:33 +02:00
Michael Natterer 5c7e2f5c95 app: add gegl:mirrors to Filters -> Distorts as "Kaleidoscope" 2014-06-27 12:02:16 +02:00
Michael Natterer 88762df4cf app: more debug output in GimpWarpTool, for fixing the timeout mess... 2014-06-26 14:01:35 +02:00
Michael Natterer 6eba4c716b app: cleanup in GimpImageMap
- don't allow to create a GimpImageMap of an operation without output
- make "region", "mode" and "gamma-hack" settable on a map that
  already has a graph
- don't insert a useless "over" if the operation is a source op
- do the gamma-hack always on formats with alpha, so we don't lose
  intermediate alpha results on source ops
- simplify graph connection a lot
- in GimpImageMap tool, don't recreate the map when reconfiguring
  "region" and "gamma-hack"
2014-06-25 18:16:52 +02:00
Michael Natterer a665c30823 app: gimp_spin_button_new() -> gtk_spin_button_new() 2014-06-21 22:39:37 +02:00
Michael Natterer 99efd9c1a5 app: make sure the warp tool's canvas circle updates when its size changes
and make the undo functions static, no idea why they were not.
2014-06-20 01:14:53 +02:00
Michael Natterer 374fd6cfd6 app: fix some blacklisting typos in GimpGeglTool 2014-06-20 01:14:21 +02:00
Michael Natterer 604c14a08c app: allow the fuzzy and by-color select tools to show the mask directly
instead of the outline. This is experimental, please comment. The
color is currently hardcoded to magenta.
2014-06-11 22:15:00 +02:00
Michael Natterer 21a8f9c96b app: add boolean "mask_inverted" to GimpDisplayShell
and to gimp_display_shell_set_mask(). It allows to choose whether the
mask is drawn inverted, instead of always drawing it inverted.
2014-06-11 21:33:57 +02:00
Michael Natterer 6857d0141d Revert "app: put #include "gegl-plugin.h" back in two places, but with a FIXME"
This reverts commit 5c1d0e8dc2.

gegl_operation_get_key() is now included via gegl.h as it should.
2014-06-10 23:04:32 +02:00
Michael Natterer 5c1d0e8dc2 app: put #include "gegl-plugin.h" back in two places, but with a FIXME 2014-06-10 10:04:22 +02:00
Michael Natterer 8aa0019c2e app: clean up inclusion of gegl-plugin.h, mostly removals 2014-06-10 03:13:09 +02:00
Michael Natterer 7496a0471b app: GimpGeglTool: show the operations' title, if they have one 2014-06-10 03:11:54 +02:00
Michael Natterer cd479ce04e app: add an "auto overlay" API to GimpToolGui
which makes tool dialogs auto-overlay if the canvas is large
enough. Set all tools dialogs except GimpImageMapTool's dialog to
auto.
2014-06-09 03:08:43 +02:00
Michael Natterer e2628b9bd0 app: revive gimpdrawable-foreground-extract
Move the extraction graph from the foreground select tool there.
Enable the PDB wrapper again, using default values for now.
Some sytle cleanup in the foreground select tool.
2014-06-03 23:05:23 +02:00
Michael Natterer 38c86da8e9 app: factor out utility function gimp_get_fill_params()
which returns an error if there is no pattern for GIMP_FILL_PATTERN.
Use it instead of having the same code in 3 variants, and make error
handling consistent with bucket fill.
2014-06-03 14:00:01 +02:00
Michael Natterer 1416743b5c app: use GimpFillType in gimp_drawable_bucket_fill()
GimpBucketFillMode is now tool- and pdb-only.
2014-06-03 01:34:51 +02:00
Michael Natterer 425748dab0 libgimpbase, *: rename GimpFillType values: GIMP_FOO_FILL -> GIMP_FILL_FOO
Change all users accordingly and add compat enum values and compat
constants to script-fu and pygimp.
2014-06-03 01:11:32 +02:00
Michael Natterer 2068c61a85 Bug 730862 - Preview frozen while dragging selection tools...
...(crop, rectangle, etc) in large image zoomed-to-fit

Default to GIMP_MOTION_MODE_COMPRESS in all tools, and override it to
GIMP_MOTION_MODE_EXACT if the tool really needs the exact path of
motion events. This greatly reduces the events processed by the
rectangle tools and makes them much more responsive.
2014-06-02 20:55:33 +02:00
Michael Natterer 1781b79a16 app: record GimpDrawTool's last draw time *after* it has drawn its stuff
not before. Doesn't seem to change things but it's more correct.
2014-06-02 20:45:31 +02:00
Michael Natterer 069996d75f app: some random code cleanup 2014-06-02 20:17:39 +02:00
Michael Natterer 1464bee257 app: use the GParamSpec's nick as label in gimp_prop_spin_scale_new()
if a NULL label was passed. Override this with explicit calls to
gimp_spin_scale_set_label() in the two cases where we really don't
want a label.
2014-06-01 23:39:19 +02:00
Michael Natterer 0349b8972a app: rename gimpimage-contiguous-region.[ch] to gimppickable-....[ch]
The functions don't need to know about sample_merged, in fact they
used the boolean only to either use the passed image or drawable and
otherwise ran the same code. The sample_merged logic belongs into
their callers (and sometimes not even there).
2014-05-31 09:52:44 +02:00
Michael Natterer 227cff3af4 app: add gegl:color-rotate to Colors -> Map 2014-05-29 18:34:45 +02:00
Michael Natterer 00f6973b3c app: add gegl:convolution-matrix to Filters -> Generic 2014-05-29 02:36:59 +02:00
Michael Natterer a06d570748 app: rename gimpproptable.[ch] to gimppropgui.[ch] 2014-05-27 02:15:48 +02:00
Michael Henning 6923f49b0d app: Fix broken header guards. 2014-05-25 20:50:56 -04:00
Michael Natterer 7286bbda52 app: use GimpSpinScale in the shear tool dialog 2014-05-25 15:44:38 +02:00
Michael Natterer 38c0937b8f Bug 723534 - Warp transform tool does not follow active layer
Add GIMP_DIRTY_ACTIVE_DRAWABLE to the warp tool's dirty mask, so it
correctly switches to the new active layer. Also remove
GIMP_DIRTY_IMAGE_STRUCTURE, I don't know why that was there in the
first place.
2014-05-25 15:00:49 +02:00
Michael Natterer 62cbd3eac3 app: show the region combo only if the op has the "position-dependent" key
otherwise, hide it and default to SELECTION.
2014-05-24 03:06:24 +02:00
Michael Natterer bb73acbb15 app: create an empty node with the gegl:nop operation
so we can safely ask for its name (workaround for GEGL warning).
2014-05-24 03:04:26 +02:00
Michael Natterer 3550132ac7 app: add support for picking GEGL relative-coordinate values
Also, don't link relative coordinates by default, and remove some crap
heuristics that predate property keys.
2014-05-24 01:38:15 +02:00
Michael Natterer 6c5515c676 app: allow to specify the workarea of GEGL ops in the GEGL tool GUI
Add a combo that switches between "selection" and "entire layer".
Need to find a way to hide that thing when the setting makes no
difference. Also the combo is generally pretty much experimantal.
2014-05-24 01:07:28 +02:00
Michael Natterer 413846475f app: make GimpOperationTool manage an icon name for the GUI
and add an icon_name parameter to gimp_operation_tool_set_operation().
2014-05-22 23:29:59 +02:00
Michael Natterer 7ae3612485 app: GimpBrightnessContrastTool: don't call gimp_image_map_tool_preview()
it was redundant because the function already modified the config
object.
2014-05-22 01:25:01 +02:00
Michael Natterer ebb663e1c6 Revert "app: add a small delay when applying a GUI change in GimpImageMapTool"
This reverts commit d46a8335e6,
it was a bad idea (like this at least).
2014-05-22 01:17:52 +02:00
Michael Natterer d46a8335e6 app: add a small delay when applying a GUI change in GimpImageMapTool
This keeps the tool more responsive for expensive ops, since multiple
fast changes are compressed into one call to gimp_image_map_tool_preview().
2014-05-22 00:50:21 +02:00
Michael Natterer 4a0e9a2083 app: gegl:noise-cell -> gegl:cell-noise 2014-05-19 01:31:55 +02:00
Michael Natterer c899f14f79 app: add gegl:panorama-projection to Filters -> Map 2014-05-17 01:23:24 +02:00
Michael Natterer 9e1ee4235f app: add gegl:perlin-noise and gegl:simplex-noise to Filters->Render->Clouds 2014-05-17 01:17:30 +02:00
Michael Natterer e09453cfbb app: add gegl:tile-glass to Filters -> Artistic 2014-05-16 21:59:30 +02:00
Øyvind Kolås 2df26f7fd8 app: GimpOperationTool: change values for color roles property keys
Foreground and background are GIMP concepts; the annotations on GEGL ops
should be about how the operation makes use of the meta-data; not where
it comes from in one particular application using GEGL.

old names:

"role", "foreground-color",
"role", "background-color",

new names:
"role", "color-primary",
"role", "color-secondary",
2014-05-16 17:05:50 +02:00
Michael Natterer befb871b6e app: GimpOperationTool sync the op with drawable/context in reset() 2014-05-16 16:28:24 +02:00
Michael Natterer f50b215d16 app: add a default impl of GimpImageMapTool::reset()
and chain up where possible instead of duplicating that code.
2014-05-16 16:22:31 +02:00
Michael Natterer 86988e7d67 app: GimpOperationTool: don't crash GimpGeglTool 2014-05-16 08:21:33 +02:00
Michael Natterer 58b096e02e app: fix x/y copy-paste confusion in last commit 2014-05-16 03:17:08 +02:00
Michael Natterer dac7201ead app: follow GEGL propertiy keys convention change
and clean up the magic a bit.
2014-05-16 03:10:01 +02:00
Michael Natterer 0dd1a4b552 app: sync the op with the drawable/image/gimp in GimpOperationTool
which currently means setting FG/BG color on properties with the
right GEGL property keys, and the output size of source ops.
2014-05-16 02:32:16 +02:00
Michael Natterer 8be52f6aa7 app, libgimp*: pass translated blurbs to GIMP_CONFIG_INSTALL_PROP_FOO()
instead of passing N_()-strings; and remove gettext() calls on these
strings when using them. Reduces complexitx, and fixes double- and
untranslated strings. Also enables to treat properties of GIMP and
GEGL objects the same way, which was totally broken before.
2014-05-14 23:34:01 +02:00
Michael Natterer 65a65947d9 app, libgimp: replace GTK_STOCK_FOO by icon names
unless it's a stock ID used for an action button, will address that
later.
2014-05-11 22:49:22 +02:00
Michael Natterer 17167594ea app: use the newly added libgimpwidgets icon name APIs 2014-05-07 21:32:09 +02:00
Michael Natterer 0d2d1c3752 app: port most of app's GUI from stock IDs to icon names
There is still quite some stock ID rendering around, stay tuned...
2014-05-07 15:30:38 +02:00
Michael Natterer 23037b5230 app: convert all stock IDs kept around by the core by icon names
Particularly GimpViewable's stock_id. Make sure old config files
containing stock IDs are still properly parsed.
2014-05-07 01:01:56 +02:00
Michael Natterer a601e21281 app: add gegl:noise-cell and gegl:noise-reduction to the menus 2014-05-05 02:06:10 +02:00
Michael Natterer 84ce7f1a9a app: add a "Gamma hack" toggle to the GimpImageMap dialog 2014-05-04 20:42:58 +02:00
Michael Natterer 242ccacdcc app: s/paint_brush/paintbrush/ in the paintbrush action code 2014-05-03 22:55:05 +02:00
Michael Natterer 7d398da360 app: connect the warp tool's effect size to the standard tool size action 2014-05-03 20:24:09 +02:00
Mukund Sivaraman a2f6d60a42 app: Return NULL if assertion fails 2014-05-02 23:32:53 +05:30
Michael Natterer 843866e7e7 app: make things behave more reasonable with multiple monitors
There is now a preference option that determines whether windows
should be opened on the same monitor as before. It should be disabled
when the machine gets monitors plugged/unplugged dynamically ("laptop")
and enabled when there is a static multi-monitor setup ("wokstation").
This is merely the current simplistic policy on top of the newly added
underlying infrastructure:

- pass integer monitor numbers around in all places where we already
  pass around a GdkScreen. Pass the "current" monitor to these changed
  APIs, where "current" is either the monitor where the action-triggering
  widget is, or if that is unavailable the monitor where the mouse is.

- add gimp_widget_get_monitor() in order to easily get to the monitor,
  just like gtk_widget_get_screen().

- add screen and monitor parameters in some places that were missed
  before.

- in sessionrc, save all window positions relative to the window's
  monitor, and save the monitor separately, if it's not the screen's
  primary monitor.

- when restoring window positions, use the stored monitor when the new
  prefs options says so (use the screen's primary monitor if there is
  no stored monitor), otherwise use current monitor that is now passed
  around.
2014-05-02 03:01:23 +02:00
Michael Natterer b60e1779cd app: pass a GimpGradient to gimp_drawable_blend(), not a GimpBlendMode
The blend mode is now only a PDB compat enum, translate between
GimpBlendMode and the built-in gradients in the gimp-edit-blend PDB
wrapper.
2014-04-30 09:17:42 +02:00
Michael Natterer b196a42d8e app: add missing include in gimpseamlesscloneoptions.c 2014-04-30 00:05:47 +02:00
Jehan 5ca9240d74 app: display a status error when seamless cloning without foreground image. 2014-04-30 09:11:31 +12:00
Jehan 8f410b927a app: optimize and add progress information to seamless clone
Display information when seamless clone is being processed.
Also ensure that I don't compute again when no properties is changed.
2014-04-30 09:10:31 +12:00
Jehan cb93f2bd27 app: commit seamless clone in progress when switching tools. 2014-04-30 09:08:09 +12:00
Jehan 5077a149f3 app: add correct options for seamless clone operation. 2014-04-30 09:07:03 +12:00
Michael Natterer a4223766f2 all,libgimp*: move GimpConvolveType and GimpInkBlobType to libgimpbase
and make GimpConvolveType's values sane.
2014-04-29 22:44:58 +02:00
Michael Natterer 22c222291d libgimpbase,*: clean up enum values in gimpbaseenums.h
GIMP_ADD_foo_MASK -> GIMP_ADD_MASK_foo
GIMP_foo_MODE -> GIMP_BLEND_foo
GIMP_foo_CLONE -> GIMP_CLONE_foo
GIMP_foo -> GIMP_DODGE_BURN_TYPE_foo
GIMP_foo -> GIMP_TRANSFER_foo

Add compat values for the old names and compat code to script-fu
and pygimp.
2014-04-29 20:58:30 +02:00
Michael Natterer 1397b9aae7 app: use gimp_draw_tool_add_arc() for the GimpPaintTool brush circle
because add_handle() doesn't scale with the image.
2014-04-20 22:03:17 +02:00
Jehan c2470611d9 app: fix variable typo.
Small bug in commit 0bdb747. A variable was initialized twice and
another none. That's for peer programming. :-)
2014-04-20 19:24:03 +12:00
Michael Natterer 0bdb74710a app: rename the value-1...value-4 actions to opacity, size, aspect, angle 2014-04-19 20:09:39 +02:00
Michael Natterer 6e726f248f app: use the right aspect and angle actions for GimpBrushTool 2014-04-19 19:53:40 +02:00
Michael Natterer fb8b05a149 app: FG select: remove some redundant "display" parameters 2014-04-19 03:35:31 +02:00
Michael Natterer 6b10b0511a app: FG select: refresh the preview when matting options change 2014-04-19 02:51:00 +02:00
Michael Natterer de710e72d1 app: FG select: default to drawing foreground strokes 2014-04-19 02:50:38 +02:00
Michael Natterer 6ec272fde7 Bug 312780 - Add undo to foreground selection tool
Implement undoing strokes by keeping copies of the changed parts
of the trimap around in internal undo/redo stacks.
2014-04-19 00:34:21 +02:00
Michael Natterer df8a148db0 app: make the transform tool's undo functions static 2014-04-18 23:03:22 +02:00
Michael Natterer b8a3f395e5 app: FG select: turn the "Preview" button into an actual toggle button 2014-04-18 22:37:33 +02:00
Michael Natterer 35f23b5311 app: FG select: use the FG select stock icon/text instead "Apply"
and GTK_RESPONSE_APPLY instead of a private RESPONSE_APPLY.
2014-04-18 22:15:35 +02:00
Michael Natterer 1756779771 app: FG select: refactor to use the standard tool cancel/commit logic
Simplifies things and prevents losing a complex selection on tool change.
2014-04-18 22:06:07 +02:00
Michael Natterer ebc4910a7c app: FG select: reorder functions to match all other tools 2014-04-18 21:52:38 +02:00
Michael Natterer 5ba7eaa5c7 app: FG select: remove trailing space from the "status_mode" message
such formatting should not be done intranslatable strings, instead
add the space between the two messages when putting them together
using an untranslatable format string.
2014-04-18 21:42:08 +02:00
Michael Natterer 667f4e2d3a app: FG select: rename "Reset" to "Cancel" because that's what it does
Also call update_gui() at the right places so we don't leave the GUI
in an inconsistent state.
2014-04-18 21:38:53 +02:00
Michael Natterer a53c2f8b30 app: cancel the active tool before going brightness/contrast->levels->curves
because changing tools now automatically commits the old tool.
2014-04-18 21:15:46 +02:00
Michael Natterer 2e3011bddf app: FG select: implement GimpTool::initialize()
And create/show the GUI there, so it only becomes visible after
actually activating the tool with a click. Also refuse to operate
on invisible drawables.
2014-04-17 10:55:07 +02:00
Michael Natterer d695c98d74 app: free select: start the draw tool more subclass-friendly 2014-04-17 10:51:50 +02:00
Michael Natterer a876c1b4b0 app: always overlay FG select's GUI on the canvas 2014-04-17 08:48:42 +02:00
Michael Natterer a18f196dd3 app: FG select: fix condition for upchaining in key_press()
Fixes committing the free select using return.
2014-04-17 01:59:34 +02:00
Michael Natterer 2d797bf8d5 app: FG select: remove parameters from stroke_paint()
and factor out a cancel_paint() function.
2014-04-17 01:52:21 +02:00
Michael Natterer e138333204 app: FG select: implement canceling the current stroke (right mouse button) 2014-04-17 01:46:32 +02:00
Michael Natterer 05abd5a37d app: don't call gimp_free_select_tool_select() from FG select
It doesn't serve any purpose since its implementation doesn't
do anything in FREE_SELECT mode.
2014-04-17 01:42:38 +02:00
Michael Natterer 61aaa11158 app: reorder some prototypes in FG select 2014-04-17 01:40:08 +02:00
Michael Natterer 8836a1eae1 app: general cleanup in the foreground select tool
- fix some indentation
- implement GimpTool::options_notify() instead of a signal callback
- consistently chain up first in FREE_SELECT state
- misc. cleanup
2014-04-16 23:03:57 +02:00
Michael Natterer b1a0b4555e Bug 726181 - Heal tool mode is ignored - always in "Normal" mode
Make the paint mode menu insensitive for the heal tool.
2014-04-15 17:15:32 +02:00
Michael Natterer 60da428c73 app: add gegl:apply-lens to Filters -> Distorts 2014-04-13 20:58:25 +02:00
Michael Natterer 6d5b6a648d app: turn the paint tool fallback cursor cross into a circle 2014-04-12 22:17:55 +02:00
Michael Natterer 2a9b6bf569 app: make blend's and straight line's start-line-end drawing look nicer
Use circle handles instead of crosses, and put the items into a stroke
group so they don't look ugly when drawing over each other.
2014-04-12 22:10:26 +02:00
Michael Natterer 36905bf46c app: foreground select: the initial rough selection is an unknown area
not the foreground area. This seems to make the tool do something useful.
2014-04-12 21:31:38 +02:00
Michael Natterer 693d0d082b app: don't draw a redundant fallback crosshair when a line preview is shown
and introduce some local variables is gimp_paint_tool_draw() to reduce
clutter.
2014-04-12 15:26:11 +02:00
Michael Natterer d897188e32 app: also move the "draw brush outline" logic from brush to paint tool
So all paint tools honor the setting.

Add GimpPaintTool::get_outline() which either returns an outline, or
calls gimp_paint_tool_set_draw_cursor() and implement it in
GimpBrushTool and GimpInkTool. Handle all brush/circle/fallback
drawing in gimp_paint_tool_draw().
2014-04-12 15:03:15 +02:00
Michael Natterer 1ade034c49 app: move "show paint tool cursor" logic from GimpBrushTool to GimpPaintTool
Now all paint tools (also ink and mypaint brush) honor the setting and
can work without mouse cursor.
2014-04-12 12:54:08 +02:00
Michael Natterer 66010e6c6d Bug 623734 - No brush outline with dynamics set to 'size' on 'pressure'
Improve the logic in gimp_brush_tool_draw() and draw a brush-sized
circle if the actual brush outline got scaled away by dynamics.
2014-04-12 01:13:11 +02:00
Michael Natterer e3a98eade2 app: use gimp_paint_tool_set_draw_circle() in the ink tool
so we get at least a rough preview of where the paint will go.
2014-04-09 15:27:37 +02:00
Michael Natterer 703c2c78c4 app: add gimp_paint_tool_set_draw_circle()
which enables drawing a circle with a given radius at the cursor
location.
2014-04-09 15:27:31 +02:00
Michael Natterer e8459beb24 app: don't create a fallback crosshair in gimp_brush_tool_create_outline()
Instead, draw the crosshair in gimp_brush_tool_draw() if create_outline()
didn't return an item *and* if there is no brush tool cursor.

In gimp_source_tool_draw(), don't add an additional crosshair if
create_outline() returned an item.

This fixes both "no cursor at all" and "both outline and crosshair
shown" for certain prefs settings conbinations (bug #623734).
2014-04-09 14:53:24 +02:00
Michael Natterer 88e4d7e468 app: commit ongoing tool operations on tool change instead of cancelling
On tool change, we used to simply halt tools before switching to the
new one, which meant losing ongoing live-previewed tool changes, like
transforms, warps and color corrections. This change makes them being
applied to the image instead before switching to the new tool:

Add enum value GIMP_TOOL_ACTION_COMMIT that is passed to
GimpTool::control() before tool switching. Handle the new enum value
in all tools, and actually commit the previewed stuff. This changes
the behavior of GimpCageTool, GimpImageMapTool, GimpTransformTool and
GimpWarpTool.
2014-04-04 22:34:26 +02:00
Michael Natterer 40d42d113e app: make tool_manager_select_tool() a private function 2014-04-04 16:47:51 +02:00
João S. O. Bueno 72ac53705f Adds "fill" arrange modes to the Align Tool
The Align Tool had to be used in a very hacky way if one
intended to evenly distribute items across an image,
or other reference object (it would actually require one to
calculate the item spacing out of GIMP). This adds vertical
and horizontal fill modes: the reference object is divided
in N equal segments, where N is the number of items,
and each item is placed in the center of one of
these segments. The existing "offset" parameter
is used as an extra margin for the distribution,
and can be set to negative values, so that the items can
even get moved outside the boundaries of the reference object.
2014-03-13 03:38:53 -03:00
João S. O. Bueno 8d85c0c41c Enables aligning of elements using the active Path
For some reason, using the image active Path as
a reference for the align tool was displayed
in the UI, but disabled in the code.
2014-03-12 22:44:26 -03:00
Michael Natterer b13c68fda6 Bug 701159 - Wrong name in transform tool dialogs...
...when acting on a path or selection

Factor out the code that checks if an active item exists and if it's
transformable (not locked etc.) and use that function in more places.
This fixes both the wrong dialog labels and the tool running into
broken states when the selection or a path are being transformed.
2014-02-05 00:57:28 +01:00
Michael Natterer 1335bc42c8 app: halt the transform tool when switching layer|selection|path transform 2014-02-04 23:28:59 +01:00
Michael Natterer 651be184b7 Bug 721066 - There is a 2nd, broken, "GEGL Operation" tool in the toolbox
Make the operation tool invisible by default.
2014-02-04 00:19:30 +01:00
Michael Natterer 7385e030dd app, libgimp: add increment parameters to gimp_prop_widget_set_factor()
Step and page increments can't be reasonable calculated or guessed
based on the GUI widget's factor, so pass them each time we call
set_factor(). This change reintroduces sane ranges for the levels tool
for != u8 images again.
2014-02-03 22:57:51 +01:00
Michael Natterer 5054241ca6 Bug 722034 - Incorrect snapping behaviour for scale tool
Always snap to the center of transform tool handles.
2014-01-29 23:40:35 +01:00
Michael Natterer ef85845372 app: add gimp_paint_options_set_default_brush_size()
and use it globally instead of two different methods, one of which was
forgotten to be ported to the new aspect ratio range where 0.0 means
1:1. Add a FIXME comment in paint_tools.pdb where I think setting the
default size is a bug, see #721249.
2014-01-04 15:48:34 +01:00
Michael Natterer ca938c1275 app: add gegl:texturize-canvas to the menus as "Apply Canvas" 2014-01-01 19:07:48 +01:00
Elle Stone f79bff0719 Increase Levels, Curves increments to 10000.
1000 increments is not enough for just barely noticeable
shadow adjustments in linear gamma color spaces.
2013-12-26 15:41:02 +01:00
Michael Natterer 81c02e7db1 Bug 720492 - Letter spacing in Text Tool not reset to default
Also reset the "letter-spacing" property in gimp_text_options_reset().
2013-12-20 13:11:53 +01:00
Daniel Sabo dca3559f13 app: Allow painting in Foreground Select's preview mode 2013-12-14 02:49:00 -08:00
Daniel Sabo e9d3bf8f19 Improve Foreground Select tool's GUI
* Add a dialog with Preview, Apply, and Reset buttons instead of
  depending only on hidden keyboard shortcuts.
* Change default paint mode to Unknown.
* Disable engine list when there is only one engine available.
* Hide useless Anti-Alias toggle.
* Write to selection instead of the layer mask.
2013-12-13 12:20:19 -08:00
Daniel Sabo 845139f910 gegl-tool: Blacklist "display" ops by category 2013-12-03 09:43:00 -08:00
Téo Mazars 9e429993c7 app: add gegl:wind to Filters -> Distorts 2013-12-01 12:57:15 +01:00
Massimo Valentini b81641e25f app: fix two typos 2013-11-28 19:44:45 +01:00
Téo Mazars 5152e1061c app: add gegl:stretch-contrast-hsv to Colors/Auto/
before removing the old plugin
2013-11-16 16:31:35 +01:00
Téo Mazars 5efcc0eb09 app: add gegl:stretch-contrast to Colors/Auto/
before removing the plug-in
2013-11-15 19:12:56 +01:00
Téo Mazars 7aeb9da6e3 app: follow gegl:dot removal
gegl:dot is now included in gegl:pixelize
2013-11-11 16:52:10 +01:00
Jehan 2aabbbd9c7 Bug 662787 - Segfaults when trying to set a large text size
If a font size is too big for cairo or pango to deal with, nicely back
up from rendering and alert the user via an error dialog.
2013-10-24 20:23:51 +13:00
Michael Natterer 697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
Téo Mazars 68feec5dcf app: add gegl:mosaic to Filters -> Distorts 2013-09-21 19:02:10 +02:00
Jehan ac0ac60ca9 Bug 708521 - Getting rid of cage_complete property on GimpCageTool, redundant with tool_state. 2013-09-22 02:28:30 +12:00
Jehan 2294b8da26 Bug 708519 - Fix using Backspace to delete a closed cage tool's points. 2013-09-22 02:17:22 +12:00
Jehan 5e331e1d25 Bug 708517: Assertion on cage tool commit with ENTER + fix cage completion with ENTER.
The key press handler must return TRUE on successfully processing the key,
otherwise the handler ends up being run several times.
2013-09-21 22:42:41 +12:00
Michael Natterer 74c54464c3 app: add a label to GimpOperationTool's aux input button
and don't pack it expanding.
2013-09-17 20:06:37 +02:00
Michael Natterer 52fe319fcb app: use a GimpPickableButton for GimpOperationTool's aux input
also WIP and currently looks like shit.
2013-09-15 00:37:42 +02:00
Jehan c7aa623a55 app: clean out a big bunch of leading tabs.
For some unknown reason, most calls to gimp_message_literal() were
indented with tabs.
2013-09-15 04:59:20 +12:00
Michael Natterer 125cf2a2a3 app: use the image instead of the projection for accessing a pickable 2013-09-13 23:29:06 +02:00
Michael Natterer 0d5910aa4b app: add gegl:bump-map to Filters -> Map 2013-09-04 00:16:25 +02:00
Michael Natterer b60d361d6c app: add gegl:plasma to Filters -> Render -> Clouds 2013-08-27 08:14:51 +02:00
Michael Natterer 28c9470d5f app: fix warning when a gegl op's aux input combo box gets destroyed
gimp_operation_tool_aux_selected() is called with a NULL drawable
when the combo is destroyed, but at that time the GeglNode we set
the buffer on is already gone. Instead of adding evil if()s,
connect_object() the combo's "select-item" signal to the node
instead of the tool, so it gets disconnected automatically.
2013-08-25 22:41:43 +02:00
Téo Mazars 8bad383a3b app: Add gegl:channel-mixer to Color/Components 2013-08-03 23:30:58 +02:00
Téo Mazars 23bc1b255c app: Add gegl:antialias -> Filters/Enhance 2013-08-03 22:47:58 +02:00
Téo Mazars 62f65ea981 app: add gegl:tile-seamless to Filters -> Map 2013-07-28 19:15:25 +02:00
Jehan 3aaa0a956d Bug 704238 - Notify through status bar that warp effect is committed with ENTER 2013-07-21 08:46:13 +09:00
Michael Natterer d682135d7a app: add gegl:alien-map to Colors -> Map 2013-07-18 22:53:06 +02:00
Michael Natterer d1795ac204 Bug 700193 - undoing paint tools doesn't update last_coords properly
paint_core->start_coords is in fact the last stroke's endpoint and
only used for storing it in GimpPaintCoreUndo, so the last endpoint
can be resotred for straight-line painting after an undo. Make the
code actually doing that.
2013-07-15 00:41:43 +02:00
Michael Natterer 0fc78cd811 app: don't add the aux input as a child to GimpOperationTool's operation
It turns the operation into a graph, which breaks things.
2013-06-30 19:10:49 +02:00
Michael Natterer 0e98904f78 app: start supporting composer ops in GimpOperationTool
If the operation has an aux input, add a combo that allows feeding
it one of the image's channels. This is all work in progress and
and should allow to use any drawable of any image.
2013-06-29 01:18:19 +02:00
Michael Natterer 7947f24bd8 app: make gimp_operation_tool_set_operation() more readable 2013-06-27 23:42:08 +02:00
Michael Natterer f56f6d1255 app: follow the GEGL invert -> invert-linear vs. invert-gamma change
and invert masks using invert-linear and other drawables using
invert-gamma. drawable_invert_cmd_callback() still always uses
invert-gamma even though it can be used on layer masks.
2013-06-24 00:45:04 +02:00
Michael Natterer caf73f5f35 Add support for both gamma-corrected and linear for all bit depths
- Add new enum GimpComponentType which contains u8, u16, u32 etc.
- Change GimpPrecision to be u8-linear, u8-gamma, u16-linear etc.
- Add all the needed formats to gimp-babl.c
- Bump the XCF version to 5 and make sure version 4 with the old
  GimpPrecision enum values is loaded correctly

This change blows up the precision enums in "New Image" and
Image->Precision so we can test all this stuff. It is undecided what
format will be user-visible options in 2.10.
2013-06-23 16:51:24 +02:00
Clayton Walker df21310b0f app: properly initialize variables 2013-06-23 01:41:50 +02:00
Michael Natterer 31e9cc2ad9 Bug 702369 - foreground selection doesnt work with image precision >8 bit
This removes the obsolete check which makes the tool fail from
gimp_display_shell_set_mask(). Also change the foreground select tool
and the display mask from using GimpChannel to GeglBuffer, because
that's what it needs, simply buffers. Most changed files simply newly
include <gegl.h> because a GeglBuffer appeared in two headers.
2013-06-22 22:26:46 +02:00
Michael Natterer 2e8ef97c13 Bug 701803 - Cage Transform raises segmentation fault...
...if layer bounds are changed.

Call gimp_tool_control_set_preserve (tool->control, FALSE) so it is
stopped when the drawable changes.
2013-06-18 19:05:54 +02:00
Michael Natterer 6280e4933a app: add gimp_handle_bar_connect_events()
to replace 3 completely ugly signal connections, repeated in 4 places.
2013-06-17 22:13:48 +02:00
Michael Natterer 640189d01e app: merge levels_linear_gamma_update() into its only caller
also reorder some functions to be in vtable order.
2013-06-17 22:07:31 +02:00
Michael Natterer 234a05845f app: use prop widgets in GimpLevelsTool, and generally clean up a bit 2013-06-17 02:07:10 +02:00
Michael Natterer a009b18a6e app: use gimp_prop_widget_set_factor() not gimp_spin_scale_set_factor() 2013-06-15 20:52:57 +02:00
Michael Natterer 731360a8f7 app: add gimp_prop_widget_set_factor()
which allows adjustment-based prop widgets to display the property
value multiplied by factor. Remove gimp_prop_opacity_spin_scale_new()
because that's simply a factor of 100.0.
2013-06-15 01:28:54 +02:00
Michael Natterer efbe095b66 app: configure GimpBrightnessContrastTool's scales according to image precision 2013-06-14 08:17:39 +02:00
Michael Natterer afb767fcc1 app: use 0..1 axes in GimpCurveTool's curves widgets on != 8-bit images 2013-06-13 00:23:49 +02:00
Michael Natterer 4edba97932 app: port GimpThresholdTool to the new variable # of histogram bins 2013-06-12 16:35:15 +02:00
Michael Natterer 6c97908a9e app: add "gboolean gamma_corrected" to gimp_histogram_new()
so we can make histograms of the gamma-corrected image data. Pass
TRUE all over the place so the histogram works perceptually. This
needs more thinking...
2013-06-12 01:02:25 +02:00
Michael Natterer a7f42de4c0 app: turn GimpHistorgram into a GimpObject, no other changes 2013-06-11 21:23:32 +02:00
Michael Natterer 875b1705fc app: don't ROUND() all input/output values to int in GimpLevelsTool
That was a leftover from before the change to 0..100 sliders for
non-8-bit images. Spoted by Elle Stone.
2013-06-10 21:51:15 +02:00
Michael Natterer 25cc5922b6 app: add gimp_tool_gui_set_focus_on_map() and use it 2013-06-08 15:34:23 +02:00
Michael Natterer 90797f0927 app: add an embedding toggling test button to the transform dialogs 2013-06-08 01:33:35 +02:00
Michael Natterer ad8d12ed69 app: add "response" signal to GimpToolGui
and connect to it instead of to gimp_tool_gui_get_dialog()'s signal.
One more step towards on-the-fly embedding/detaching.
2013-06-07 23:45:11 +02:00
Michael Natterer 0afa7d30f0 app: add gimp_tool_gui_set_description() and use it 2013-06-07 17:01:39 +02:00
Michael Natterer 9a811d276e app: add gimp_tool_gui_set_alternative_button_order() and use it
Also make some of GimpToolGui's memory management proper, there was
no leak but it needs to be proper in order to add runtime switching
between dialog and overlay.
2013-06-07 15:18:24 +02:00
Michael Natterer 88387d6e8d app: remove the "shell" parameter from gimp_tool_dialog_new() and gui_new() 2013-06-07 12:19:42 +02:00
Michael Natterer 9b9302b91a app: use a GimpToolGui in GimpColorPickerTool 2013-06-07 12:11:59 +02:00
Michael Natterer c86eebb034 app: use a GimpToolGui in GimpMeasureTool 2013-06-07 12:03:39 +02:00
Michael Natterer 1c20940f82 app: use a GimpToolGui in GimpTransformTool 2013-06-07 11:52:48 +02:00
Michael Natterer 7abbd38a25 app: use a GimpToolGui in GimpImageMapTool
instead of implementing both dialog types manually.
2013-06-07 10:28:41 +02:00
Michael Natterer 964d59df58 app: use gimp_tool_control_push/pop_preserve() in GimpWarpTool
instead of set_preserve(TRUE/FALSE). It makes no difference in this
case, but push/pop is the right API to use anyway.
2013-06-07 10:05:05 +02:00
Michael Natterer 785436f32e app: don't crash the flip tool on each click
Don't push an internal transform tool undo after invoking the flip
special case of directly transforming on each click, because the
transform clears the tool state and there is nothing to undo anyway
(flip is atomic). Additionally, add a precondition check to
gimp_transform_tool_push_internal_undo().
2013-06-06 02:08:00 +02:00
Michael Natterer ec786816bb */Makefile.am: merge INCLUDES into AM_CPPFLAGS
automake-1.13 finally warns about this anachronism.
2013-06-05 20:48:37 +02:00
Michael Natterer 6f17eb54a1 app: make sure the warp tool halts when the drawable is changed
Set preserve=FALSE by default, also don't set preserve=TRUE around
aborting the image map, that's not needed any longer because image map
has stopped to be a temporarily destructive thing.
2013-06-04 10:16:32 +02:00
Michael Natterer f1e5544053 app: gegl:noise-CIE_lch was renamed to gegl:noise-cie-lch 2013-06-04 00:54:12 +02:00
Michael Natterer a328f9d305 app: shorten enum GimpMattingEngine's value names
and reorder code in GimpForegroundSelectOptions to match the order of
properties.
2013-06-03 23:11:39 +02:00
Michael Natterer 28a9e69885 app: clean up and simplify the GimpForegroundSelectOptions GUI
Also use spin scales and the new combo box labels.
2013-06-03 23:05:39 +02:00
Michael Natterer fc0765ce16 app: ellipsize most tool options combo boxes
which means that now check/radio button labels are our biggest
width-wasters.
2013-06-03 17:35:36 +02:00
Michael Natterer a5d2123adf app: use the new combo box label in many tool options
and generally clean up a bit. Reuse the clone options code in the
perspective clone options. Addresses bug #122862.
2013-06-03 16:40:24 +02:00
Michael Natterer cbbfe674b0 app: add gegl:motion-blur-circular and -zoom to Filters -> Blur
and follow the gegl:motion-blur -> gegl:motion-blur-linear rename.
2013-06-03 00:20:42 +02:00
Michael Natterer 338ca6694a app: add gegl:waves to Filters -> Distorts 2013-06-01 15:13:40 +02:00
Michael Natterer 86d0120482 app: add gegl:grid to Filters -> Render -> Pattern 2013-06-01 01:20:30 +02:00
Michael Natterer 7a284def90 app: add gegl:dropshadow to Filters -> Light and Shadow
Also move gegl:vignette there from Filters -> Decor.
2013-06-01 01:13:22 +02:00
Michael Natterer 01ada21ae6 app: add totally evil "heuristic" for picking coords to GimpOperationTool
This can't continue like that, GEGL properties need to be tagged
somehow using gegl_operation_class_set_keys(), as planned.
2013-05-31 22:56:27 +02:00
Michael Natterer fc65928df7 app: reorder the list of blacklisted ops to be more managable
It's now two sections: ops that are in GIMP's menus, and ops
blacklisted for other reasons.
2013-05-31 22:54:46 +02:00
Michael Natterer 1ad50f300a app: don't manually blackist all GEGL transform ops any longer
They now all have the "transform" category set.
2013-05-31 09:37:00 +02:00
Michael Natterer 822057a4ff app: call gimp_color_tool_disable() when an old op's options_table dies
so gimp_image_map_tool_color_picked() isn't called any longer on clicks.
Add a warning there in case it happens anyway because this is always a
programming error.
2013-05-31 02:50:17 +02:00
Michael Natterer 3b68ae0f3c app, pdb, libgimp: Remove all traces of the supersampling recursion level
from all transform APIs. This is no longer used since we use GEGL to
transform, the value was only passed around and never used.
2013-05-31 01:15:32 +02:00
Michael Natterer 40a1efef09 app: GimpOperationTool: add support for picking coordinates from the image
gimp_operation_tool_color_picked(): if the picker's identifier is of
the form "param_spec_name:param_spec_name" and the param specs both
exist and are of the same numeric type, set the pick coordinates on
these properties of the operation's config object.
2013-05-30 23:32:54 +02:00
Michael Natterer 814c47b0b9 app: don't crash on a dangling image_map_tool->active_picker pointer
gimp_operation_tool_set_operation(): set it to NULL when destroying
the previous operation's options_table (if it was non-NULL it was a
widget from that table).
2013-05-30 23:28:26 +02:00
Michael Natterer 0a2b86e534 app: fix parameter name of gimp_image_map_tool_add_color_picker()
It's a "tooltip", and used as such, not a "help_id".
2013-05-30 23:25:39 +02:00
Michael Natterer 83dffbc03e app: fix signature of GimpColorTool's "picked" signal 2013-05-30 22:34:55 +02:00
Michael Natterer b593e3eb02 app: add gegl:motion-blur to Filters -> Blur 2013-05-30 20:04:10 +02:00
Michael Natterer b8558f8859 app: add coordinates to GimpColorTool's and GimpImageMapTool's "picked"
signals and vfuncs. This is currently unused, but GEGL operations
can soon pick coordinates just like they can pick colors.
2013-05-30 19:29:36 +02:00
Michael Natterer 73d7c28f76 app: add dedicated source files for gimp_prop_table_new() 2013-05-30 16:33:30 +02:00
Massimo Valentini 0a31b29b9a app: transform_tool - don't flush the image when display is NULL
it means the dialog is being deleted
2013-05-29 20:10:33 +02:00
Michael Natterer e3ef19ec89 app: don't gimp_display_get_image(NULL) in gimp_transform_tool_response() 2013-05-29 19:41:54 +02:00
Michael Natterer 279abd260b app: add gegl:noise-spread to Filters -> Noise 2013-05-29 19:22:14 +02:00
Michael Natterer 963275e846 app: use gimp_prop_color_button_new() in GimpColorizeTool
which removes the remaining old callbacks. Remove the set/get_color()
API from GimpColorizeConfig and instead add an unserialized "color"
property that stores its value in the other properties.
2013-05-29 00:45:24 +02:00
Michael Natterer 0c70a79c69 app: use GimpSpinScales in GimpBrightnessContrastTool 2013-05-29 00:28:39 +02:00
Michael Natterer 905439b4bf app: use GimpSpinScales in GimpColorizeTool 2013-05-29 00:18:07 +02:00
Michael Natterer a544b9d689 app: hue-saturation's lightness and saturation are -100..100 not -180..180 2013-05-29 00:16:25 +02:00
Michael Natterer 8ba777f5b1 app: use GimpSpinScales in GimpHueSaturationTool 2013-05-29 00:04:35 +02:00
Michael Natterer 3f193cd503 app: set GimpColorBalanceTool's sliders back to -100..100 2013-05-28 23:48:01 +02:00
Michael Natterer 1822bd1502 app: use gimp_prop_spin_scale_new() in GimpColorBalanceTool 2013-05-28 23:18:53 +02:00
Michael Natterer 783edc1e7b app: use gimp_prop_spin_scale_new() in GimpPosterizeTool
and remove tons of code needed to update the old stuff.
2013-05-28 22:47:12 +02:00
Michael Natterer d5fb5922b7 app: port "range" and "preserve" widgets in GimpColorBalanceTool to propwidgets 2013-05-28 19:13:40 +02:00
Michael Natterer 38e771eea3 app: use gimp_prop_enum_radio_frame_new() in GimpDesaturateTool
and remove tons of code that was needed to update the old widget.
2013-05-28 19:01:14 +02:00
Michael Natterer 07c87c7ce1 app: add gegl:shift to Filters -> Distorts 2013-05-27 00:45:51 +02:00
Michael Natterer 9c69130f72 app: add gegl:fractal-trace to Filters -> Map 2013-05-26 23:58:12 +02:00
Michael Natterer 5f76a735af app: add gegl:deinterlace to Filters -> Enhance 2013-05-26 22:15:36 +02:00
Michael Natterer 9072bf331a app: rename GimpImageMapConfig to GimpSettings
It was misnamed from the beginning and has no relation to GimpImageMap
except that it happens to be used by GimpImageMapTools. Now it feels
less weird to potentially use it for other settings too.
2013-05-25 15:26:18 +02:00
Michael Natterer df22570727 app: simplify gimp_tool_set_[active]_modifier_state()
by factoring out bits of code that were repeated 8 times, also
make sure we actually pass TRUE or FALSE as gboolean, and not some
(state & MODIFIER).
2013-05-25 02:09:33 +02:00
Michael Natterer d4bb6e0fe7 app: some general cleanup in seamless clone 2013-05-23 23:12:17 +02:00
Michael Natterer fb7ae4ba48 app: reorder functions in GimpSeamlessCloneTool to standard order 2013-05-23 22:59:51 +02:00
Michael Natterer 278def0bf9 app: set the warp tool's image_map to DRAWABLE mode 2013-05-23 19:30:46 +02:00
Massimo Valentini e378a29a91 app: fix warping an offset layer with selection 2013-05-23 19:03:31 +02:00
Michael Natterer fdfa2c782d app: integrate transform tool undo with normal image undo
Also clean up formatting a bit, and add gimp_transform_tool_halt()
which really cleans the tool's state, so we don't end up with wrong
undo/redo actions in a new tool interaction.
2013-05-23 16:02:42 +02:00
Michael Natterer 79c0ab31c2 app: some skeleton code for better warp cursors, does nothing 2013-05-22 23:59:44 +02:00
Michael Natterer 72e0743067 app: fix some broken wrap undo/redo behavior, and factor out common code 2013-05-22 23:47:31 +02:00
Michael Natterer f862bfb342 app: don't leak all new warp ops, don't abort the image map on undo/redo 2013-05-22 23:37:22 +02:00
Michael Natterer 867c5721a6 app: implement redo in the warp tool 2013-05-22 23:26:07 +02:00
Michael Natterer 2a93677b0c app: implement undo in the warp tool, no redo yet 2013-05-22 23:01:51 +02:00
Michael Natterer f51c8af556 app: remove the deleted node from the graph in gimp_warp_tool_undo() 2013-05-22 22:48:37 +02:00
Michael Natterer b601018e33 app: update the display in a "changed" handler of the warp stroke
and get the update extents from the signal's "roi" parameter. Should
be more correct but produces more artifacts for me. Either this patch
is broken, or (more likely) this triggers a bug.
2013-05-22 22:43:32 +02:00
Michael Natterer 3eadcd5e9e app: don't leak all warp strokes, unref them in button_release() 2013-05-22 09:01:54 +02:00
Michael Natterer 6938486471 app: make warp honor the layer offset 2013-05-22 02:21:07 +02:00
Michael Natterer 8e95b72b64 app: reorder GimpWarpOptions properties so "behavior" is first 2013-05-22 01:10:30 +02:00
Michael Natterer 27fbc0a05e app: remove a bunch of unneded #includes from warp 2013-05-22 01:06:55 +02:00
Michael Natterer a7eb1ee1a2 app: #ifdef warp debug printfs away 2013-05-22 01:04:29 +02:00
Michael Natterer 9426a94617 app: fix default tool order, warp is at the end of transform tools 2013-05-22 00:49:29 +02:00
Michael Natterer b63be0e79a app: reorder warp tool functions to be in standard order 2013-05-22 00:47:43 +02:00
Michael Natterer 2264dc8d63 app: add gimp_warp_tool_halt() and make the tool's life cycle sane
Particularly, don't start any graph and imagemap madness in
oper_update().
2013-05-22 00:33:50 +02:00
Michael Natterer 78f6369114 app: general cleanup and formatting attack in the warp tool 2013-05-22 00:08:14 +02:00
Michael Natterer 199565f765 app: flush the display less aggressively, new GimpImageMap style 2013-05-21 23:46:33 +02:00
Michael Natterer dff3f85c0d app: fix some warp tool brokenness and make it build 2013-05-21 23:36:42 +02:00
Michael Muré 35888a3848 warp tool: fix undo when imagemap is busy 2013-05-21 23:28:43 +02:00
Michael Muré e5545f4a4f warp tool: range the range of the strength to 1-->100 2013-05-21 23:28:43 +02:00
Michael Muré 7193cdd72c warp tool: fix the undo to update the whole dirtied area 2013-05-21 23:28:43 +02:00
Michael Muré 877c2ef96e warp tool: fix one reason that make the outline not moving along the stroke 2013-05-21 23:28:43 +02:00
Michael Muré a260039ec9 warp tool: fix wrong computation of the area to update and remove an uneeded anymore preview timer 2013-05-21 23:28:43 +02:00
Michael Muré 6abf634189 warp tool: fix commiting the deformation not working 2013-05-21 23:28:43 +02:00