42ba02bcd6
app: don't duplicate code in gimp_drawable_merge_filter()
...
gimp_gegl_apply_operation() already takes care of the
src_buffer == dest_buffer special case.
2014-05-31 22:32:10 +02:00
49818c7179
app: more cleanup in GimpProjection
...
Pull freeing the update regions into gimp_projection_free_buffer()
because freeing the buffer definitely obsoletes them. Get rid of
the last x1, y1, x2, y2 and use x, y, w, h inatead.
2014-05-31 15:13:32 +02:00
0b01f3b2b8
app: remove duplicate typedef GimpProjectionPrivate
2014-05-31 09:58:14 +02:00
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
5db796e17d
app: improve code readability in GimpProjection
2014-05-31 02:58:21 +02:00
c78d82a43c
app: render/update the visible part of the image first
...
Set the active display's viewport as priority rectangle on the image.
Update the rectangle in the default implementations of
GimpDisplayShell::scaled(), ::scrolled() and ::rotated(), which isn't
entirely correct yet but much better than before, and the only "bad"
thing that can happen with a bogus priority rectangle is that the
image is updated as out-of-viewport as before, just differently.
2014-05-31 02:36:25 +02:00
639319367a
app: allow to set a "priority rectangle" on GimpProjection
...
If it is set, that rectangle gets processed first when
idle-constructing the image via ChunkRender.
2014-05-31 02:34:56 +02:00
f509fce5d2
app: clean up the projections ChunkRender code
...
Remove member "running" it was always identical to "idle_id != 0".
Rename and reorder variables to make more sense. Simplify
gimp_projection_chunk_render_iteration() work area calculation.
2014-05-31 01:42:28 +02:00
9b341d05bb
app: remove GimpArea and use cairo_region_t instead
...
This may or may not remove some logic that avoids drawing tiny update
regions, and may or may not improve things or make them worse. Will
add code that actually tile-aligns update areas later.
2014-05-31 01:26:06 +02:00
6845766200
app: gimp_drawable_merge_filte(): don't create a copy of the applied buffer
...
This removes the huge delay when applying any GEGL op, at the cost of
breaking Edit->Fade. Need to find a better way to create this buffer.
2014-05-31 01:08:42 +02:00
a8f0c0e998
app: move all GimpProjection members to a private struct
2014-05-31 00:08:43 +02:00
a0e8208650
app: GimpUndo's icon should be "edit-undo" not "gtk-undo"
2014-05-31 00:08:10 +02:00
b39f0757db
script-fu: don't add "Erase Every Other Row" to the menus
...
because it's not only useless but also utterly slow.
2014-05-30 23:26:09 +02:00
dd6dca2435
Bug 730942 - "Rotate Image?" dialog doesn't offer understandable options
...
Add a preview of the rotated image and reword all labels.
2014-05-30 20:51:39 +02:00
bb8d65bcee
Bug 730862 - Preview frozen while dragging selection tools...
...
...(crop, rectangle, etc) in large image zoomed-to-fit
Introduce a hash of the last 16 used icons in GimpStatusbar, it was
loading icons at a very high frequency. Found by Massimo.
2014-05-30 19:40:11 +02:00
6714a414a7
configure: search only Python 2 interpreter and headers.
...
Do not accept Python 3 interpreter/headers, even when this is the
default installed Python. Search only for Python 2.
2014-05-30 09:59:51 +00:00
d895b62348
plug-ins: removing deleted color-rotate translations
2014-05-30 09:26:42 +02:00
d569ed37e3
Add app/widgets/gimppropgui-constructors.c to POTFILES.in
2014-05-30 06:59:41 +02:00
0df36e9dcf
app: move lots of state handling from sunclasses to GimpCircle
2014-05-30 03:25:02 +02:00
7438d5bd04
plug-ins: remove the color-rotate plug-in
2014-05-30 01:37:39 +02:00
f963f55fa4
app: add a "Select All" button to color-rotate's angle range controls
2014-05-30 01:23:15 +02:00
78f84e6267
build/win: Upgrade poppler to 0.26.1
2014-05-29 19:02:06 -04:00
45da2c8abb
app: use the new GimpPolar in the custom color-rotate GUI
2014-05-30 00:36:43 +02:00
71f3895597
app: GimpPolar: add () around && within a ||
2014-05-30 00:36:43 +02:00
fe7aa1384d
app: add gimp_prop_polar_new()
2014-05-30 00:36:43 +02:00
ca818d7c88
app: add new GimpCircle subblass GimpPolar to select polar coordinates
2014-05-30 00:36:42 +02:00
f1fe8b9c24
configure: clean out forgotten debug print.
2014-05-30 00:12:12 +00:00
38e2983c24
app: improve button label in color-rotate's custom GUI
2014-05-29 18:35:25 +02:00
227cff3af4
app: add gegl:color-rotate to Colors -> Map
2014-05-29 18:34:45 +02:00
f15b48b3c8
plug-ins, pdb: remove convolution-matrix and add a PDB compat procedure
2014-05-29 16:27:35 +02:00
4fbaff92a1
pdb: replace \1 \2 \3 by $1 $2 $2 as suggested by perl warning
2014-05-29 16:26:16 +02:00
00f6973b3c
app: add gegl:convolution-matrix to Filters -> Generic
2014-05-29 02:36:59 +02:00
31e07a13d1
app: convolution-matrix' matrix was flipped
2014-05-29 00:43:44 +02:00
fd3c4ac836
app: improce custom gegl:color-rotate GUI
2014-05-28 14:49:22 +02:00
5d1f6806c0
app: add a bad custom GUI for gegl:color-rotate
2014-05-28 01:00:50 +02:00
907939edc9
app: add gimp_prop_angle_range_dial_new()
...
which is by no means general and needs to be improved if ever widely
used.
2014-05-28 00:59:44 +02:00
7261c6b3a8
app: experimentally add a custom GUI for gegl:convolution-matrix
2014-05-27 22:09:40 +02:00
dd0098524f
app: add a little hint about reporting bugs against unstable git
2014-05-27 21:58:10 +02:00
774e457faf
app: add gimppropgui-constructors.[ch]
...
for operation-specific GUI constructors. Factor a generic fallback
constructor out of gimp_prop_gui_new() and move it there.
2014-05-27 11:19:32 +02:00
075cd5f098
app: restore random seed GUI for GEGL ops, broke that with the refactoring
...
and add a size group for the labels.
2014-05-27 10:47:41 +02:00
254a2b744d
app: remove the table from gimp_prop_gui_new()
...
and pack everything into boxes. There are a few size groups missing
to make everything look nicely aligned again.
2014-05-27 03:06:12 +02:00
a06d570748
app: rename gimpproptable.[ch] to gimppropgui.[ch]
2014-05-27 02:15:48 +02:00
5ffa278da5
app: factor gimp_prop_widget_new() out of gimp_prop_table_new()
...
The new function generically returns a widget for one property and is
used in gimp_prop_table_new().
2014-05-27 02:08:44 +02:00
21d97b02ce
app: add private function gimp_dial_set_target()
...
which avoids invalidating the widget if the target didn't change.
2014-05-27 02:08:43 +02:00
6b46dfdb71
app: clean up angle calculations in GimpCicrle and GimpDial
2014-05-27 02:08:43 +02:00
345bf01c01
Doc that gimp-display-new gives execution error if no GIMP GUI.
2014-05-27 00:56:05 +01:00
d36bc86292
app: fix off-by-0.5 drawing in GimpDial caused by ROUND() and a wrong offset
2014-05-26 19:09:30 +02:00
0a49755712
app: highlight the angles of GimpDial that are currently moved
2014-05-26 18:51:12 +02:00
d20b576814
app: don't create and fill the background surface on each expose()
...
Instead, keep it around and only recreate it when widget size or
background type change.
2014-05-26 11:03:39 +02:00
5c37ef213d
app: restore ungrab on unmap in GimpDial
...
which I broke when splitting classes.
2014-05-26 10:56:18 +02:00