diff options
author | bors-servo <metajack+bors@gmail.com> | 2015-03-25 07:54:50 -0600 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2015-03-25 07:54:50 -0600 |
commit | f29ea4e4ef633c023a43f47f7fc8c6b46e51b8df (patch) | |
tree | da604fe60220d1d37453fb93318d7ca736727ce7 /components/canvas | |
parent | 004e12c89deb2c30ac634e3ce2e2c63ac9da5dee (diff) | |
parent | 698b88f71d994a645024f75f8a44321bbc39cc56 (diff) | |
download | servo-f29ea4e4ef633c023a43f47f7fc8c6b46e51b8df.tar.gz servo-f29ea4e4ef633c023a43f47f7fc8c6b46e51b8df.zip |
auto merge of #5302 : mmatyas/servo/canvas_stroke, r=jdm
This is the servo side patch of servo/rust-azure#149.
Diffstat (limited to 'components/canvas')
-rw-r--r-- | components/canvas/canvas_paint_task.rs | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/components/canvas/canvas_paint_task.rs b/components/canvas/canvas_paint_task.rs index 443f70bfcc6..522f5104aa3 100644 --- a/components/canvas/canvas_paint_task.rs +++ b/components/canvas/canvas_paint_task.rs @@ -26,6 +26,7 @@ pub enum CanvasMsg { BeginPath, ClosePath, Fill, + Stroke, DrawImage(Vec<u8>, Rect<i32>, Rect<i32>, bool), DrawImageSelf(Size2D<i32>, Rect<i32>, Rect<i32>, bool), MoveTo(Point2D<f32>), @@ -211,6 +212,7 @@ impl<'a> CanvasPaintTask<'a> { CanvasMsg::BeginPath => painter.begin_path(), CanvasMsg::ClosePath => painter.close_path(), CanvasMsg::Fill => painter.fill(), + CanvasMsg::Stroke => painter.stroke(), CanvasMsg::DrawImage(imagedata, dest_rect, source_rect, smoothing_enabled) => { painter.draw_image(imagedata, dest_rect, source_rect, smoothing_enabled) } @@ -284,6 +286,19 @@ impl<'a> CanvasPaintTask<'a> { }; } + fn stroke(&self) { + let draw_options = DrawOptions::new(1.0, 0); + match self.stroke_style { + Pattern::Color(ref color) => { + self.drawtarget.stroke(&self.path_builder.finish(), + color, &self.stroke_opts, &draw_options); + } + _ => { + // TODO + } + }; + } + fn draw_image(&self, imagedata: Vec<u8>, dest_rect: Rect<i32>, source_rect: Rect<i32>, smoothing_enabled: bool) { self.write_image(imagedata, source_rect, dest_rect, smoothing_enabled); |