Commit Graph

18 Commits

Author SHA1 Message Date
6cf8bda49b Bug 735810 - performance shrinkage of Paths tool
In gimp_display_shell_expose_region(), invalidate each rect rather
than rebuilding the cairo_region_t as GdkRegion and then invalidating
the entire GdkRegion. Improves performance for tools that invalidate
complex regions.
2016-01-24 00:59:33 +01:00
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
39368a410d plugged memory leaks 2012-02-07 17:32:02 +01:00
24ee3370b8 Depend on GTK+ >= 2.24.3, cairo >= 1.20.1, gdk-pixbuf >= 2.22.1
and completely separate configure and sanity checks for gdk-pixbuf
from GTK+, because it's now distributed as a separate package. Remove
all sorts of conditional compiling based on GDK_CHECK_VERSION() and
CAIRO_VERSION.
2011-04-06 19:58:24 +02:00
7a3dc6ee38 app: remove unused #includes 2010-11-15 00:23:18 +01:00
ae9f6d1b3f app: remove the unused gimp_display_shell_expose_vectors() 2010-11-13 23:02:07 +01:00
5cea26b6e5 app: gimp_display_shell_expose_region(): return if the canvas is not realized
All GTK+ exposing functions do the same.
2010-11-13 22:58:43 +01:00
479082075b app: use cairo_region_t for canvas items if cairo >= 1.10 is available
This is a gross hack that typedefs around between GdkRegion and
cairo_region_t and has some evil #ifdefs. This is going to die
immeditately once we can depend on cairo 1.10.
2010-10-18 20:01:05 +02:00
d9cd9f8a07 app: add an "update" signal to GimpCanvasItem
which gets emitted when the item wants to be redrawn:

- Emit "update" it when any item property changes
- Groups connect to their children and forward "update" for them
- The shell connects to its group of canvas items and exposed
  the affected area
- Remove gimp_display_shell_expose_item()
- Move all the shell's item group code into gimpdisplayshell-items.c
2010-10-01 17:13:00 +02:00
d3f19baf0d app: remove "shell" parameter from GimpCanvasItem's public APIs
because each item has a shell now. Keep the parameter in the virtual
functions though because that saves a lot of code in the subclasses.
2010-10-01 14:54:53 +02:00
ad331d5626 app: minor cleanup in gimp_display_shell_expose_item() 2010-09-30 09:05:55 +02:00
7f1cadddd0 app: use temporary canvas items for exposing guides and sample points
and remove gimp_display_shell_expose_guide() and _sample_point().
2010-09-30 09:02:36 +02:00
0d11be8fed app: add a canvas sample point item class
and use it in gimp_display_shell_draw_sample_point().
2010-09-30 01:14:23 +02:00
ebeb933350 app: add gimp_display_shell_expose_item() and use it in the draw tool 2010-09-29 20:10:21 +02:00
ddc63de6d6 app: remove "gboolean use_offsets" from gimpdisplayshell-transform.[ch] 2010-09-23 19:24:04 +02:00
ae0cf760ab app: only expose the area covered by the vectors object
gimp_display_shell_expose_vectors() exposes the bounding box of
the vectors plus a small border.
2010-09-17 21:32:38 +02:00
4c57e3f19e app: port GimpVectors drawing to cairo
This is just a rough proof of concept. More changes are about
to follow.
2010-09-16 21:13:08 +02:00
f6fd3aed51 Move GimpDisplayShell's expose functions to separate files 2009-10-02 23:55:26 +02:00