Lines Matching refs:element
161 const Element* element = iter.prev(); in walkStack() local
162 if (nullptr == element) { in walkStack()
166 if (SkClipStack::kEmptyGenID == element->getGenID()) { in walkStack()
170 if (SkClipStack::kWideOpenGenID == element->getGenID()) { in walkStack()
178 switch (element->getOp()) { in walkStack()
182 if (element->isInverseFilled()) { in walkStack()
183 if (element->contains(relaxedQueryBounds)) { in walkStack()
185 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
189 ClipResult result = this->clipInsideElement(element); in walkStack()
196 if (element->contains(relaxedQueryBounds)) { in walkStack()
199 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
202 ClipResult result = this->clipOutsideElement(element); in walkStack()
217 if (element->isInverseFilled()) { in walkStack()
218 if (element->contains(relaxedQueryBounds)) { in walkStack()
221 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
224 ClipResult result = this->clipOutsideElement(element); in walkStack()
231 if (element->contains(relaxedQueryBounds)) { in walkStack()
233 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
237 ClipResult result = this->clipInsideElement(element); in walkStack()
252 if (element->isInverseFilled()) { in walkStack()
253 if (element->contains(relaxedQueryBounds)) { in walkStack()
255 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
260 if (element->contains(relaxedQueryBounds)) { in walkStack()
263 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
276 if (element->isInverseFilled()) { in walkStack()
277 if (element->contains(relaxedQueryBounds)) { in walkStack()
279 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
283 if (element->contains(relaxedQueryBounds)) { in walkStack()
285 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
298 if (element->isInverseFilled()) { in walkStack()
299 if (element->contains(relaxedQueryBounds)) { in walkStack()
302 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
306 if (element->contains(relaxedQueryBounds)) { in walkStack()
308 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
323 if (element->isInverseFilled()) { in walkStack()
324 if (element->contains(relaxedQueryBounds)) { in walkStack()
327 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
331 ClipResult result = this->clipOutsideElement(element); in walkStack()
341 if (element->contains(relaxedQueryBounds)) { in walkStack()
344 } else if (GrClip::IsOutsideClip(element->getBounds(), queryBounds)) { in walkStack()
348 ClipResult result = this->clipInsideElement(element); in walkStack()
370 fMaskGenID = element->getGenID(); in walkStack()
375 SkASSERT(kXOR_SkClipOp == element->getOp() || in walkStack()
376 kReverseDifference_SkClipOp == element->getOp()); in walkStack()
380 Element* newElement = fMaskElements.addToHead(*element); in walkStack()
406 Element* element = fMaskElements.headIter().get(); in walkStack() local
407 while (element) { in walkStack()
409 switch (element->getOp()) { in walkStack()
421 element->setOp(kReplace_SkClipOp); in walkStack()
430 element->setOp(kReplace_SkClipOp); in walkStack()
436 element->setOp(kReplace_SkClipOp); in walkStack()
446 skippable = element->isInverseFilled() ? in walkStack()
447 GrClip::IsOutsideClip(element->getBounds(), queryBounds) : in walkStack()
448 element->contains(relaxedQueryBounds); in walkStack()
452 element->setOp(kReplace_SkClipOp); in walkStack()
467 if (element->isAA()) { in walkStack()
471 element = fMaskElements.headIter().get(); in walkStack()
481 GrReducedClip::ClipResult GrReducedClip::clipInsideElement(const Element* element) { in clipInsideElement() argument
483 if (!element->isAA()) { in clipInsideElement()
484 element->getBounds().round(&elementIBounds); in clipInsideElement()
486 elementIBounds = GrClip::GetPixelIBounds(element->getBounds()); in clipInsideElement()
494 switch (element->getDeviceSpaceType()) { in clipInsideElement()
499 SkASSERT(element->getBounds() == element->getDeviceSpaceRect()); in clipInsideElement()
500 SkASSERT(!element->isInverseFilled()); in clipInsideElement()
501 if (element->isAA()) { in clipInsideElement()
503 fAAClipRect = element->getDeviceSpaceRect(); in clipInsideElement()
508 fAAClipRectGenID = fMaskElements.isEmpty() ? element->getGenID() : fMaskGenID; in clipInsideElement()
510 } else if (!fAAClipRect.intersect(element->getDeviceSpaceRect())) { in clipInsideElement()
518 SkASSERT(!element->isInverseFilled()); in clipInsideElement()
519 return this->addAnalyticFP(element->getDeviceSpaceRRect(), Invert::kNo, in clipInsideElement()
520 GrAA(element->isAA())); in clipInsideElement()
523 return this->addAnalyticFP(element->getDeviceSpacePath(), in clipInsideElement()
524 Invert(element->isInverseFilled()), GrAA(element->isAA())); in clipInsideElement()
531 GrReducedClip::ClipResult GrReducedClip::clipOutsideElement(const Element* element) { in clipOutsideElement() argument
532 switch (element->getDeviceSpaceType()) { in clipOutsideElement()
537 SkASSERT(!element->isInverseFilled()); in clipOutsideElement()
541 this->addWindowRectangle(element->getDeviceSpaceRect(), element->isAA()); in clipOutsideElement()
542 if (!element->isAA()) { in clipOutsideElement()
546 return this->addAnalyticFP(element->getDeviceSpaceRect(), Invert::kYes, in clipOutsideElement()
547 GrAA(element->isAA())); in clipOutsideElement()
550 SkASSERT(!element->isInverseFilled()); in clipOutsideElement()
551 const SkRRect& clipRRect = element->getDeviceSpaceRRect(); in clipOutsideElement()
553 GrAA(element->isAA())); in clipOutsideElement()
578 this->addWindowRectangle(horzRect, element->isAA()); in clipOutsideElement()
583 this->addWindowRectangle(vertRect, element->isAA()); in clipOutsideElement()
590 return this->addAnalyticFP(element->getDeviceSpacePath(), in clipOutsideElement()
591 Invert(!element->isInverseFilled()), GrAA(element->isAA())); in clipOutsideElement()
687 const SkClipStack::Element* element) { in stencil_element() argument
688 GrAA aa = GrAA(element->isAA()); in stencil_element()
689 switch (element->getDeviceSpaceType()) { in stencil_element()
694 return rtc->priv().drawAndStencilRect(clip, ss, (SkRegion::Op)element->getOp(), in stencil_element()
695 element->isInverseFilled(), aa, viewMatrix, in stencil_element()
696 element->getDeviceSpaceRect()); in stencil_element()
700 element->asDeviceSpacePath(&path); in stencil_element()
705 return rtc->priv().drawAndStencilPath(clip, ss, (SkRegion::Op)element->getOp(), in stencil_element()
706 element->isInverseFilled(), aa, viewMatrix, path); in stencil_element()
719 const SkClipStack::Element* element) { in draw_element() argument
721 switch (element->getDeviceSpaceType()) { in draw_element()
726 rtc->drawRect(clip, std::move(paint), aa, viewMatrix, element->getDeviceSpaceRect()); in draw_element()
730 element->asDeviceSpacePath(&path); in draw_element()
763 const Element* element = iter.get(); in drawAlphaClipMask() local
764 SkRegion::Op op = (SkRegion::Op)element->getOp(); in drawAlphaClipMask()
765 GrAA aa = GrAA(element->isAA()); in drawAlphaClipMask()
766 bool invert = element->isInverseFilled(); in drawAlphaClipMask()
779 if (!stencil_element(rtc, clip, &kStencilInElement, translate, element)) { in drawAlphaClipMask()
802 draw_element(rtc, clip, std::move(paint), aa, translate, element); in drawAlphaClipMask()
827 const Element* element = iter.get(); in drawStencilClipMask() local
829 if (element->isAA() && GrFSAAType::kNone != renderTargetContext->fsaaType()) { in drawStencilClipMask()
839 SkRegion::Op op = (SkRegion::Op)element->getOp(); in drawStencilClipMask()
843 if (Element::DeviceSpaceType::kRect == element->getDeviceSpaceType()) { in drawStencilClipMask()
847 element->asDeviceSpacePath(&clipPath); in drawStencilClipMask()
892 if (Element::DeviceSpaceType::kRect == element->getDeviceSpaceType()) { in drawStencilClipMask()
895 element->getDeviceSpaceRect()); in drawStencilClipMask()
933 if (Element::DeviceSpaceType::kRect == element->getDeviceSpaceType()) { in drawStencilClipMask()
936 element->getDeviceSpaceRect()); in drawStencilClipMask()