aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkClipStack.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/SkClipStack.cpp')
-rw-r--r--src/core/SkClipStack.cpp78
1 files changed, 39 insertions, 39 deletions
diff --git a/src/core/SkClipStack.cpp b/src/core/SkClipStack.cpp
index 1a1e85f4c5..f155b49c4f 100644
--- a/src/core/SkClipStack.cpp
+++ b/src/core/SkClipStack.cpp
@@ -83,7 +83,7 @@ void SkClipStack::Element::replay(SkCanvasClipVisitor* visitor) const {
visitor->clipRect(this->getRect(), this->getOp(), this->isAA());
break;
case kEmpty_Type:
- visitor->clipRect(kEmptyRect, kIntersect_SkClipOp, false);
+ visitor->clipRect(kEmptyRect, SkCanvas::kIntersect_Op, false);
break;
}
}
@@ -111,7 +111,7 @@ void SkClipStack::Element::invertShapeFillType() {
}
}
-void SkClipStack::Element::initPath(int saveCount, const SkPath& path, SkClipOp op,
+void SkClipStack::Element::initPath(int saveCount, const SkPath& path, SkCanvas::ClipOp op,
bool doAA) {
if (!path.isInverseFillType()) {
SkRect r;
@@ -176,16 +176,16 @@ void SkClipStack::Element::checkEmpty() const {
SkASSERT(!fPath.isValid());
}
-bool SkClipStack::Element::canBeIntersectedInPlace(int saveCount, SkClipOp op) const {
+bool SkClipStack::Element::canBeIntersectedInPlace(int saveCount, SkCanvas::ClipOp op) const {
if (kEmpty_Type == fType &&
- (kDifference_SkClipOp == op || kIntersect_SkClipOp == op)) {
+ (SkCanvas::kDifference_Op == op || SkCanvas::kIntersect_Op == op)) {
return true;
}
// Only clips within the same save/restore frame (as captured by
// the save count) can be merged
return fSaveCount == saveCount &&
- kIntersect_SkClipOp == op &&
- (kIntersect_SkClipOp == fOp || kReplace_SkClipOp == fOp);
+ SkCanvas::kIntersect_Op == op &&
+ (SkCanvas::kIntersect_Op == fOp || SkCanvas::kReplace_Op == fOp);
}
bool SkClipStack::Element::rectRectIntersectAllowed(const SkRect& newR, bool newAA) const {
@@ -399,9 +399,9 @@ void SkClipStack::Element::updateBoundAndGenID(const Element* prior) {
fFiniteBound = this->getRect();
fFiniteBoundType = kNormal_BoundsType;
- if (kReplace_SkClipOp == fOp ||
- (kIntersect_SkClipOp == fOp && nullptr == prior) ||
- (kIntersect_SkClipOp == fOp && prior->fIsIntersectionOfRects &&
+ if (SkCanvas::kReplace_Op == fOp ||
+ (SkCanvas::kIntersect_Op == fOp && nullptr == prior) ||
+ (SkCanvas::kIntersect_Op == fOp && prior->fIsIntersectionOfRects &&
prior->rectRectIntersectAllowed(this->getRect(), fDoAA))) {
fIsIntersectionOfRects = true;
}
@@ -460,28 +460,28 @@ void SkClipStack::Element::updateBoundAndGenID(const Element* prior) {
// Now integrate with clip with the prior clips
switch (fOp) {
- case kDifference_SkClipOp:
+ case SkCanvas::kDifference_Op:
this->combineBoundsDiff(combination, prevFinite);
break;
- case kXOR_SkClipOp:
+ case SkCanvas::kXOR_Op:
this->combineBoundsXOR(combination, prevFinite);
break;
- case kUnion_SkClipOp:
+ case SkCanvas::kUnion_Op:
this->combineBoundsUnion(combination, prevFinite);
break;
- case kIntersect_SkClipOp:
+ case SkCanvas::kIntersect_Op:
this->combineBoundsIntersection(combination, prevFinite);
break;
- case kReverseDifference_SkClipOp:
+ case SkCanvas::kReverseDifference_Op:
this->combineBoundsRevDiff(combination, prevFinite);
break;
- case kReplace_SkClipOp:
+ case SkCanvas::kReplace_Op:
// Replace just ignores everything prior
// The current clip's bound information is already filled in
// so nothing to do
break;
default:
- SkDebugf("SkClipOp error\n");
+ SkDebugf("SkCanvas::ClipOp error\n");
SkASSERT(0);
break;
}
@@ -608,7 +608,7 @@ bool SkClipStack::internalQuickContains(const SkRect& rect) const {
Iter iter(*this, Iter::kTop_IterStart);
const Element* element = iter.prev();
while (element != nullptr) {
- if (kIntersect_SkClipOp != element->getOp() && kReplace_SkClipOp != element->getOp())
+ if (SkCanvas::kIntersect_Op != element->getOp() && SkCanvas::kReplace_Op != element->getOp())
return false;
if (element->isInverseFilled()) {
// Part of 'rect' could be trimmed off by the inverse-filled clip element
@@ -620,7 +620,7 @@ bool SkClipStack::internalQuickContains(const SkRect& rect) const {
return false;
}
}
- if (kReplace_SkClipOp == element->getOp()) {
+ if (SkCanvas::kReplace_Op == element->getOp()) {
break;
}
element = iter.prev();
@@ -633,7 +633,7 @@ bool SkClipStack::internalQuickContains(const SkRRect& rrect) const {
Iter iter(*this, Iter::kTop_IterStart);
const Element* element = iter.prev();
while (element != nullptr) {
- if (kIntersect_SkClipOp != element->getOp() && kReplace_SkClipOp != element->getOp())
+ if (SkCanvas::kIntersect_Op != element->getOp() && SkCanvas::kReplace_Op != element->getOp())
return false;
if (element->isInverseFilled()) {
// Part of 'rrect' could be trimmed off by the inverse-filled clip element
@@ -645,7 +645,7 @@ bool SkClipStack::internalQuickContains(const SkRRect& rrect) const {
return false;
}
}
- if (kReplace_SkClipOp == element->getOp()) {
+ if (SkCanvas::kReplace_Op == element->getOp()) {
break;
}
element = iter.prev();
@@ -666,8 +666,8 @@ bool SkClipStack::asPath(SkPath *path) const {
element->asPath(&operand);
}
- SkClipOp elementOp = element->getOp();
- if (elementOp == kReplace_SkClipOp) {
+ SkCanvas::ClipOp elementOp = element->getOp();
+ if (elementOp == SkCanvas::kReplace_Op) {
*path = operand;
} else {
Op(*path, operand, (SkPathOp)elementOp, path);
@@ -718,7 +718,7 @@ void SkClipStack::pushElement(const Element& element) {
}
break;
}
- } else if (kReplace_SkClipOp == element.getOp()) {
+ } else if (SkCanvas::kReplace_Op == element.getOp()) {
this->restoreTo(fSaveCount - 1);
prior = (Element*) fDeque.back();
}
@@ -727,7 +727,7 @@ void SkClipStack::pushElement(const Element& element) {
newElement->updateBoundAndGenID(prior);
}
-void SkClipStack::clipRRect(const SkRRect& rrect, const SkMatrix& matrix, SkClipOp op,
+void SkClipStack::clipRRect(const SkRRect& rrect, const SkMatrix& matrix, SkCanvas::ClipOp op,
bool doAA) {
SkRRect transformedRRect;
if (rrect.transform(matrix, &transformedRRect)) {
@@ -741,7 +741,7 @@ void SkClipStack::clipRRect(const SkRRect& rrect, const SkMatrix& matrix, SkClip
this->clipPath(path, matrix, op, doAA);
}
-void SkClipStack::clipRect(const SkRect& rect, const SkMatrix& matrix, SkClipOp op,
+void SkClipStack::clipRect(const SkRect& rect, const SkMatrix& matrix, SkCanvas::ClipOp op,
bool doAA) {
if (matrix.rectStaysRect()) {
SkRect devRect;
@@ -756,7 +756,7 @@ void SkClipStack::clipRect(const SkRect& rect, const SkMatrix& matrix, SkClipOp
this->clipPath(path, matrix, op, doAA);
}
-void SkClipStack::clipPath(const SkPath& path, const SkMatrix& matrix, SkClipOp op,
+void SkClipStack::clipPath(const SkPath& path, const SkMatrix& matrix, SkCanvas::ClipOp op,
bool doAA) {
SkPath devPath;
path.transform(matrix, &devPath);
@@ -768,7 +768,7 @@ void SkClipStack::clipPath(const SkPath& path, const SkMatrix& matrix, SkClipOp
void SkClipStack::clipEmpty() {
Element* element = (Element*) fDeque.back();
- if (element && element->canBeIntersectedInPlace(fSaveCount, kIntersect_SkClipOp)) {
+ if (element && element->canBeIntersectedInPlace(fSaveCount, SkCanvas::kIntersect_Op)) {
element->setEmpty();
}
new (fDeque.push_back()) Element(fSaveCount);
@@ -794,7 +794,7 @@ const SkClipStack::Element* SkClipStack::Iter::prev() {
return (const SkClipStack::Element*)fIter.prev();
}
-const SkClipStack::Element* SkClipStack::Iter::skipToTopmost(SkClipOp op) {
+const SkClipStack::Element* SkClipStack::Iter::skipToTopmost(SkCanvas::ClipOp op) {
if (nullptr == fStack) {
return nullptr;
@@ -879,13 +879,13 @@ bool SkClipStack::isRRect(const SkRect& bounds, SkRRect* rrect, bool* aa) const
back->getType() != SkClipStack::Element::kRRect_Type) {
return false;
}
- if (back->getOp() == kReplace_SkClipOp) {
+ if (back->getOp() == SkCanvas::kReplace_Op) {
*rrect = back->asRRect();
*aa = back->isAA();
return true;
}
- if (back->getOp() == kIntersect_SkClipOp) {
+ if (back->getOp() == SkCanvas::kIntersect_Op) {
SkRect backBounds;
if (!backBounds.intersect(bounds, back->asRRect().rect())) {
return false;
@@ -894,12 +894,12 @@ bool SkClipStack::isRRect(const SkRect& bounds, SkRRect* rrect, bool* aa) const
SkDeque::Iter iter(fDeque, SkDeque::Iter::kBack_IterStart);
SkAssertResult(static_cast<const Element*>(iter.prev()) == back);
while (const Element* prior = (const Element*)iter.prev()) {
- if ((prior->getOp() != kIntersect_SkClipOp &&
- prior->getOp() != kReplace_SkClipOp) ||
+ if ((prior->getOp() != SkCanvas::kIntersect_Op &&
+ prior->getOp() != SkCanvas::kReplace_Op) ||
!prior->contains(backBounds)) {
return false;
}
- if (prior->getOp() == kReplace_SkClipOp) {
+ if (prior->getOp() == SkCanvas::kReplace_Op) {
break;
}
}
@@ -951,12 +951,12 @@ void SkClipStack::Element::dump() const {
"reverse-difference",
"replace",
};
- static_assert(0 == kDifference_SkClipOp, "op_str");
- static_assert(1 == kIntersect_SkClipOp, "op_str");
- static_assert(2 == kUnion_SkClipOp, "op_str");
- static_assert(3 == kXOR_SkClipOp, "op_str");
- static_assert(4 == kReverseDifference_SkClipOp, "op_str");
- static_assert(5 == kReplace_SkClipOp, "op_str");
+ static_assert(0 == SkCanvas::kDifference_Op, "op_str");
+ static_assert(1 == SkCanvas::kIntersect_Op, "op_str");
+ static_assert(2 == SkCanvas::kUnion_Op, "op_str");
+ static_assert(3 == SkCanvas::kXOR_Op, "op_str");
+ static_assert(4 == SkCanvas::kReverseDifference_Op, "op_str");
+ static_assert(5 == SkCanvas::kReplace_Op, "op_str");
static_assert(SK_ARRAY_COUNT(kOpStrings) == SkRegion::kOpCnt, "op_str");
SkDebugf("Type: %s, Op: %s, AA: %s, Save Count: %d\n", kTypeStrings[fType],