1 /* 2 * Copyright 2015 Google Inc. 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8 #include "GrDashLinePathRenderer.h" 9 10 #include "GrGpu.h" 11 #include "effects/GrDashingEffect.h" 12 onCanDrawPath(const CanDrawPathArgs & args) const13bool GrDashLinePathRenderer::onCanDrawPath(const CanDrawPathArgs& args) const { 14 SkPoint pts[2]; 15 if (args.fStroke->isDashed() && args.fPath->isLine(pts)) { 16 return GrDashingEffect::CanDrawDashLine(pts, *args.fStroke, *args.fViewMatrix); 17 } 18 return false; 19 } 20 onDrawPath(const DrawPathArgs & args)21bool GrDashLinePathRenderer::onDrawPath(const DrawPathArgs& args) { 22 GR_AUDIT_TRAIL_AUTO_FRAME(args.fTarget->getAuditTrail(), "GrDashLinePathRenderer::onDrawPath"); 23 SkPoint pts[2]; 24 SkAssertResult(args.fPath->isLine(pts)); 25 return GrDashingEffect::DrawDashLine(args.fTarget, *args.fPipelineBuilder, args.fColor, 26 *args.fViewMatrix, pts, args.fAntiAlias, *args.fStroke); 27 } 28