diff options
author | Saurav Sachidanand <sauravsachidanand@gmail.com> | 2016-02-18 21:41:45 +0530 |
---|---|---|
committer | Saurav Sachidanand <sauravsachidanand@gmail.com> | 2016-02-19 22:19:09 +0530 |
commit | 939560bd6e3367db9096850bca4c405e404bddbe (patch) | |
tree | e71194425b0fd518ef6b5564c8c0c4016cd6610f /components/script/dom/canvasrenderingcontext2d.rs | |
parent | 83be388f59b1bb4dfccc6ccd89022caa13b37a94 (diff) | |
download | servo-939560bd6e3367db9096850bca4c405e404bddbe.tar.gz servo-939560bd6e3367db9096850bca4c405e404bddbe.zip |
Update some canvas properties as enums instead of DOMString
Diffstat (limited to 'components/script/dom/canvasrenderingcontext2d.rs')
-rw-r--r-- | components/script/dom/canvasrenderingcontext2d.rs | 50 |
1 files changed, 28 insertions, 22 deletions
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index 7ea623b5bf4..97574187038 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -12,6 +12,8 @@ use dom::bindings::cell::DOMRefCell; use dom::bindings::codegen::Bindings::CSSStyleDeclarationBinding::CSSStyleDeclarationMethods; use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding; use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding::CanvasFillRule; +use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding::CanvasLineCap; +use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding::CanvasLineJoin; use dom::bindings::codegen::Bindings::CanvasRenderingContext2DBinding::CanvasRenderingContext2DMethods; use dom::bindings::codegen::Bindings::ImageDataBinding::ImageDataMethods; use dom::bindings::codegen::Bindings::WindowBinding::WindowMethods; @@ -1209,39 +1211,43 @@ impl CanvasRenderingContext2DMethods for CanvasRenderingContext2D { } // https://html.spec.whatwg.org/multipage/#dom-context-2d-linecap - fn LineCap(&self) -> DOMString { - let state = self.state.borrow(); - match state.line_cap { - LineCapStyle::Butt => DOMString::from("butt"), - LineCapStyle::Round => DOMString::from("round"), - LineCapStyle::Square => DOMString::from("square"), + fn LineCap(&self) -> CanvasLineCap { + match self.state.borrow().line_cap { + LineCapStyle::Butt => CanvasLineCap::Butt, + LineCapStyle::Round => CanvasLineCap::Round, + LineCapStyle::Square => CanvasLineCap::Square, } } // https://html.spec.whatwg.org/multipage/#dom-context-2d-linecap - fn SetLineCap(&self, cap_str: DOMString) { - if let Ok(cap) = LineCapStyle::from_str(&cap_str) { - self.state.borrow_mut().line_cap = cap; - self.ipc_renderer.send(CanvasMsg::Canvas2d(Canvas2dMsg::SetLineCap(cap))).unwrap() - } + fn SetLineCap(&self, cap: CanvasLineCap) { + let line_cap = match cap { + CanvasLineCap::Butt => LineCapStyle::Butt, + CanvasLineCap::Round => LineCapStyle::Round, + CanvasLineCap::Square => LineCapStyle::Square, + }; + self.state.borrow_mut().line_cap = line_cap; + self.ipc_renderer.send(CanvasMsg::Canvas2d(Canvas2dMsg::SetLineCap(line_cap))).unwrap(); } // https://html.spec.whatwg.org/multipage/#dom-context-2d-linejoin - fn LineJoin(&self) -> DOMString { - let state = self.state.borrow(); - match state.line_join { - LineJoinStyle::Round => DOMString::from("round"), - LineJoinStyle::Bevel => DOMString::from("bevel"), - LineJoinStyle::Miter => DOMString::from("miter"), + fn LineJoin(&self) -> CanvasLineJoin { + match self.state.borrow().line_join { + LineJoinStyle::Round => CanvasLineJoin::Round, + LineJoinStyle::Bevel => CanvasLineJoin::Bevel, + LineJoinStyle::Miter => CanvasLineJoin::Miter, } } // https://html.spec.whatwg.org/multipage/#dom-context-2d-linejoin - fn SetLineJoin(&self, join_str: DOMString) { - if let Ok(join) = LineJoinStyle::from_str(&join_str) { - self.state.borrow_mut().line_join = join; - self.ipc_renderer.send(CanvasMsg::Canvas2d(Canvas2dMsg::SetLineJoin(join))).unwrap() - } + fn SetLineJoin(&self, join: CanvasLineJoin) { + let line_join = match join { + CanvasLineJoin::Round => LineJoinStyle::Round, + CanvasLineJoin::Bevel => LineJoinStyle::Bevel, + CanvasLineJoin::Miter => LineJoinStyle::Miter, + }; + self.state.borrow_mut().line_join = line_join; + self.ipc_renderer.send(CanvasMsg::Canvas2d(Canvas2dMsg::SetLineJoin(line_join))).unwrap(); } // https://html.spec.whatwg.org/multipage/#dom-context-2d-miterlimit |