Michael Natterer
d96091d514
app: port GimpMagnifyTool away from draw_tool_pause()/resume()
2011-03-28 12:22:29 +02:00
Michael Natterer
60d24b4c04
app: get rid of #ifdef USE_CAIRO_REGION almost everywhere
...
get replaced by GDK region functions and use the cairo region
functions unconditionally all over the place.
2010-10-22 19:58:11 +02:00
Michael Natterer
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
Michael Natterer
b74811324a
app: don't use PROJ_ROUND() for pixel-adjusting canvas item drawing
...
When PROJ_ROUND()ing e.g. 3.8, it ends up at 4, then we added the 0.5
offset to draw a nice cairo line in the middle of the pixel,
effectively drawing a line that's meant to be at 3.8 at 4.5. Instead,
we now use floor(x)+0.5 now which snaps the above example to 3.5.
Also, calculate arcs like we calculate rectangles (transform the arc's
bounding box and pixel-align that, then recalculate the center), so
arcs properly align with rectangles.
2010-10-04 21:48:39 +02:00
Michael Natterer
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
Michael Natterer
201bfe3e25
app: add a "shell" property to GimpCanvasItem
...
and pass it to all constructors. The GimpDisplayShell is needed
because items are going to become more powerful soon.
2010-10-01 14:13:45 +02:00
Michael Natterer
7367ec1b7c
app: fix the extents of filled rectangles and invalidate less pixels
...
for large unfilled ones: if larger than 64x64 (arbitrary), invalidate
only the actual lines.
2010-09-29 19:58:59 +02:00
Michael Natterer
ddc63de6d6
app: remove "gboolean use_offsets" from gimpdisplayshell-transform.[ch]
2010-09-23 19:24:04 +02:00
Michael Natterer
284403d99e
app: fix width and height properties to allow negative sizes
2010-09-22 21:45:33 +02:00
Michael Natterer
d0f6846ff5
app: remove premature canvas item extents caching optimization again
2010-09-22 10:33:41 +02:00
Michael Natterer
f17cc0093d
app: minor cleanup and fixes
2010-09-19 23:46:06 +02:00
Michael Natterer
96bdf1fec5
app: refactor the canvas items to return a GdkRegion as extents
...
instead of invalidating the canvas themselves.
2010-09-19 23:20:36 +02:00
Michael Natterer
69a898cc9f
app: some cairo tool drawing infrastructure for review, please have a look
2010-09-19 19:45:51 +02:00