summaryrefslogtreecommitdiffstats
path: root/src/dropper-context.cpp
diff options
context:
space:
mode:
authorKrzysztof Kosi??ski <tweenk.pl@gmail.com>2011-08-27 12:36:15 +0000
committerKrzysztof Kosinski <tweenk.pl@gmail.com>2011-08-27 12:36:15 +0000
commitac0bc3b7583e5b45ed6ec97923170a77b5648d2e (patch)
treec6d354ccc7edf1a6deefe7ca1de53ea1fefa01c0 /src/dropper-context.cpp
parentRemove NRRect use from the extension system (diff)
downloadinkscape-ac0bc3b7583e5b45ed6ec97923170a77b5648d2e.tar.gz
inkscape-ac0bc3b7583e5b45ed6ec97923170a77b5648d2e.zip
Update 2Geom. Remove all use of NRRectL.
(bzr r10582.1.3)
Diffstat (limited to 'src/dropper-context.cpp')
-rw-r--r--src/dropper-context.cpp16
1 files changed, 3 insertions, 13 deletions
diff --git a/src/dropper-context.cpp b/src/dropper-context.cpp
index 9fbbcdc27..d91642bd2 100644
--- a/src/dropper-context.cpp
+++ b/src/dropper-context.cpp
@@ -225,25 +225,15 @@ static gint sp_dropper_context_root_handler(SPEventContext *event_context, GdkEv
Geom::Rect r(dc->centre, dc->centre);
r.expandBy(rw);
if (!r.hasZeroArea()) {
- NRRectL area;
- area.x0 = r[Geom::X].min();
- area.y0 = r[Geom::Y].min();
- area.x1 = r[Geom::X].max();
- area.y1 = r[Geom::Y].max();
- int w = area.x1 - area.x0;
- int h = area.y1 - area.y0;
- cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, w, h);
+ Geom::IntRect area = r.roundOutwards();
+ cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, area.width(), area.height());
sp_canvas_arena_render_surface(SP_CANVAS_ARENA(sp_desktop_drawing(desktop)), s, area);
ink_cairo_surface_average_color_premul(s, R, G, B, A);
cairo_surface_destroy(s);
}
} else {
// pick single pixel
- NRRectL area;
- area.x0 = floor(event->button.x);
- area.y0 = floor(event->button.y);
- area.x1 = area.x0 + 1;
- area.y1 = area.y0 + 1;
+ Geom::IntRect area = Geom::IntRect::from_xywh(floor(event->button.x), floor(event->button.y), 1, 1);
cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 1, 1);
sp_canvas_arena_render_surface(SP_CANVAS_ARENA(sp_desktop_drawing(desktop)), s, area);
ink_cairo_surface_average_color_premul(s, R, G, B, A);